--{ extension 'xmatch' }\r
-\r
-WIDTH=60\r
-function p(msg) io.write(msg..' ':rep(WIDTH-#msg)) end\r
-\r
-----------------------------------------------------------------------\r
-p"match as an expression"\r
-print(match 1 with 1 -> 'ok' | 2 -> 'KO')\r
-\r
-----------------------------------------------------------------------\r
-p "global match function"\r
-match function g\r
-| x if x<10 -> return 'o'\r
-| _ -> return 'k'\r
-end\r
-print(g(1)..g(11))\r
-\r
-----------------------------------------------------------------------\r
-p "global match function, multi-args"\r
-match function cmp\r
-| x, y if x<y -> return 'increasing'\r
-| _, _ -> return 'decreasing'\r
- end\r
-\r
-if cmp(1,2)=='increasing' and cmp(2,1)=='decreasing' then\r
- print "ok" else print "KO"\r
-end\r
-\r
-----------------------------------------------------------------------\r
-p "local match function"\r
-do\r
- local match function x\r
- | 1 -> print 'ok'\r
- end\r
- x(1)\r
-end\r
-assert(not x)\r
-\r
-----------------------------------------------------------------------\r
-p "global bind assignment"\r
-bind {a, b} = {'o', 'k'}\r
-print(a..b)\r
-\r
-----------------------------------------------------------------------\r
-p "local bind assignment"\r
-c, d = 'k', 'o'\r
-do\r
- local bind {c, {d}} = {'o', {'k'}}\r
- print(c..d)\r
-end\r
-\r
-----------------------------------------------------------------------\r
-p "local bind assignment scope"\r
-print(d..c)\r
+-{ extension 'xmatch' }
+
+WIDTH=60
+function p(msg) io.write(msg..' ':rep(WIDTH-#msg)) end
+
+----------------------------------------------------------------------
+p"match as an expression"
+print(match 1 with 1 -> 'ok' | 2 -> 'KO')
+
+----------------------------------------------------------------------
+p "global match function"
+match function g
+| x if x<10 -> return 'o'
+| _ -> return 'k'
+end
+print(g(1)..g(11))
+
+----------------------------------------------------------------------
+p "global match function, multi-args"
+match function cmp
+| x, y if x<y -> return 'increasing'
+| _, _ -> return 'decreasing'
+ end
+
+if cmp(1,2)=='increasing' and cmp(2,1)=='decreasing' then
+ print "ok" else print "KO"
+end
+
+----------------------------------------------------------------------
+p "local match function"
+do
+ local match function x
+ | 1 -> print 'ok'
+ end
+ x(1)
+end
+assert(not x)
+
+----------------------------------------------------------------------
+p "global bind assignment"
+bind {a, b} = {'o', 'k'}
+print(a..b)
+
+----------------------------------------------------------------------
+p "local bind assignment"
+c, d = 'k', 'o'
+do
+ local bind {c, {d}} = {'o', {'k'}}
+ print(c..d)
+end
+
+----------------------------------------------------------------------
+p "local bind assignment scope"
+print(d..c)
-local dirname = ... or arg and arg[2] or error "No directory specified"\r
-print ("Precompiling the content of "..dirname)\r
-\r
-local f = io.popen ("dir /S /b " .. dirname)\r
-for src in f:lines() do\r
- local base = src:match "^(.+)%.mlua$"\r
- if base then\r
- local cmd = "metalua "..src.." -o "..base..".luac"\r
- print (cmd)\r
- os.execute (cmd)\r
- end\r
-end\r
-\r
-\r
+local dirname = ... or arg and arg[2] or error "No directory specified"
+print ("Precompiling the content of "..dirname)
+
+local f = io.popen ("dir /S /b " .. dirname)
+for src in f:lines() do
+ local base = src:match "^(.+)%.mlua$"
+ if base then
+ local cmd = "metalua "..src.." -o "..base..".luac"
+ print (cmd)
+ os.execute (cmd)
+ end
+end
+
+