summaryrefslogtreecommitdiff
path: root/paramap.lua
diff options
context:
space:
mode:
Diffstat (limited to 'paramap.lua')
-rw-r--r--paramap.lua9
1 files changed, 9 insertions, 0 deletions
diff --git a/paramap.lua b/paramap.lua
new file mode 100644
index 0000000..1984d44
--- /dev/null
+++ b/paramap.lua
@@ -0,0 +1,9 @@
+local promise = require'cqueues.promise'
+return function (list, fn)
+ local n = #list
+ local promises = {}
+ for i = 1,n do promises[i] = promise.new(function() return fn(list[i]) end) end
+ local out = {}
+ for i = 1,n do out[i] = promises[i]:get() end
+ return out
+end