Mercurial Hosting > luan
diff website/src/examples/map_reduce.txt.luan @ 2171:8b77bd42864d
add add Thread.map_reduce
| author | Franklin Schmidt <fschmidt@gmail.com> |
|---|---|
| date | Sun, 22 Mar 2026 19:24:52 -0600 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/website/src/examples/map_reduce.txt.luan Sun Mar 22 19:24:52 2026 -0600 @@ -0,0 +1,28 @@ +local Luan = require "luan:Luan.luan" +local error = Luan.error +local ipairs = Luan.ipairs or error() +local Thread = require "luan:Thread.luan" +local Io = require "luan:Io.luan" +local Http = require "luan:http/Http.luan" + + +local function map(_) + return {1} +end + +local function reduce(lists) + local n = 0 + for _, list in ipairs(lists) do + n = n + list[1] + end + return {n} +end + +local mr = Thread.map_reduce("count",map,reduce) + +return function() + local list = mr(nil) + local n = list[1] + Io.stdout = Http.response.text_writer() + %>count: <%=n%><% +end
