on master help sign in
functiondef
81ab969iko
zod/luau/lib/lua/parser.hoon+8
@@ -37,6 +37,14 @@ apex
37 parse-string
37 parse-string
38 ::
38 ::
39 (cold [%wildcard ~] (jest '...'))
39 (cold [%wildcard ~] (jest '...'))
40+ ::
41+ %+ cook
42+ |=(=funcbody [%functiondef funcbody])
43+ ;~ pfix
44+ (jest 'function')
45+ wss
46+ parse-funcbody
47+ ==
40 ==
48 ==
41:: Parse expressions separated by binary operators
49:: Parse expressions separated by binary operators
42::
50::
zod/luau/lib/lua/printer.hoon+1
@@ -33,6 +33,7 @@ print
33 %table (print-table +.expr)
33 %table (print-table +.expr)
34 %string (print-string +.expr)
34 %string (print-string +.expr)
35 %wildcard "..."
35 %wildcard "..."
36+ %functiondef (print-funcbody +.expr)
36 ==
37 ==
37:: string
38:: string
38::
39::
zod/luau/sur/lua.hoon+1
@@ -7,6 +7,7 @@
7 ==
7 ==
8+$ expr
8+$ expr
9 $%
9 $%
10+ [%functiondef funcbody]
10 [%wildcard ~]
11 [%wildcard ~]
11 [%string string]
12 [%string string]
12 [%binop expr binop expr]
13 [%binop expr binop expr]
zod/luau/tests/foo.lua+3
@@ -104,3 +104,6 @@ local function g(x) return math.sin(x) end
104
104
105local a = require('mod2')
105local a = require('mod2')
106local b = require('mod2')
106local b = require('mod2')
107+function adder(x)
108+ return function (y) return x + y end
109+end