1
0
Fork 0
mirror of https://github.com/Reuh/anselme.git synced 2025-10-27 16:49:31 +00:00

Add default and named arguments, rename equality operator to ==, shortcut for string pairs

This commit is contained in:
Étienne Fildadut 2021-04-25 18:40:45 +02:00
parent 17751c5c59
commit 151c70ed26
28 changed files with 396 additions and 146 deletions

View file

@ -0,0 +1,4 @@
$ f(str: foo)
@str + foo
{f("bi")} = {f(foo="bi")}

View file

@ -0,0 +1,14 @@
local _={}
_[5]={}
_[4]={data="bibi = bibi",tags=_[5]}
_[3]={_[4]}
_[2]={"return"}
_[1]={"text",_[3]}
return {_[1],_[2]}
--[[
{ "text", { {
data = "bibi = bibi",
tags = {}
} } }
{ "return" }
]]--

View file

@ -1,6 +1,6 @@
:5 a
~ a = 2
~ a == 2
ko
~~
ok

View file

@ -1,6 +1,6 @@
:5 a
~ a = 5
~ a == 5
ok
~~
ko

View file

@ -1,6 +1,6 @@
:5 a
~ a = 2
~ a == 2
ko
~~ 0
ko

View file

@ -1,6 +1,6 @@
:5 a
~ a = 2
~ a == 2
ko
~~ 1
ok

View file

@ -1,4 +1,4 @@
:5 a
~ a = 2
~ a == 2
ko

View file

@ -1,4 +1,4 @@
:5 a
~ a = 5
~ a == 5
ok

View file

@ -1,19 +1,19 @@
:(1:2) a
0 = {a = (5:2)}
0 = {a == (5:2)}
0 = {a = (1:3)}
0 = {a == (1:3)}
1 = {a = (1:2)}
1 = {a == (1:2)}
:[1,2,3] b
0 = {b = a}
0 = {b == a}
0 = {b = []}
0 = {b == []}
0 = {b = [3,1,2]}
0 = {b == [3,1,2]}
0 = {b = [1,2,3,4]}
0 = {b == [1,2,3,4]}
1 = {b = [1,2,3]}
1 = {b == [1,2,3]}

View file

@ -0,0 +1,9 @@
$ f : test
@"ok"
{f} = {test}
$ g : bis(a)
@a
{g("ye")} = {bis("ye")}

View file

@ -0,0 +1,22 @@
local _={}
_[9]={}
_[8]={}
_[7]={data="ye = ye",tags=_[9]}
_[6]={data="ok = ok",tags=_[8]}
_[5]={_[7]}
_[4]={_[6]}
_[3]={"return"}
_[2]={"text",_[5]}
_[1]={"text",_[4]}
return {_[1],_[2],_[3]}
--[[
{ "text", { {
data = "ok = ok",
tags = {}
} } }
{ "text", { {
data = "ye = ye",
tags = {}
} } }
{ "return" }
]]--

View file

@ -0,0 +1,4 @@
$ f(a, b, c)
@a + b + c
{f("a", "b", "c")} = {f(a="a", b="b", c="c")} = {f(c="c", a="a", b="b")}

View file

@ -0,0 +1,14 @@
local _={}
_[5]={}
_[4]={tags=_[5],data="abc = abc = abc"}
_[3]={_[4]}
_[2]={"return"}
_[1]={"text",_[3]}
return {_[1],_[2]}
--[[
{ "text", { {
data = "abc = abc = abc",
tags = {}
} } }
{ "return" }
]]--

View file

@ -0,0 +1,4 @@
$ f(a, b, c="c")
@a + b + c
{f("a", "b")} = {f("a", "b", "c")} = {f(b="b", a="a")}

View file

@ -0,0 +1,14 @@
local _={}
_[5]={}
_[4]={tags=_[5],data="abc = abc = abc"}
_[3]={_[4]}
_[2]={"return"}
_[1]={"text",_[3]}
return {_[1],_[2]}
--[[
{ "text", { {
data = "abc = abc = abc",
tags = {}
} } }
{ "return" }
]]--

View file

@ -0,0 +1,4 @@
§ f : test
@"ok"
{f} = {test}

View file

@ -0,0 +1,14 @@
local _={}
_[5]={}
_[4]={tags=_[5],data="ok = ok"}
_[3]={_[4]}
_[2]={"return"}
_[1]={"text",_[3]}
return {_[1],_[2]}
--[[
{ "text", { {
data = "ok = ok",
tags = {}
} } }
{ "return" }
]]--

View file

@ -5,6 +5,6 @@ $ f
y
@2
~ f = 2
~ f == 2
~ choose(1)
Yes.

View file

@ -0,0 +1,3 @@
:42 a : b
{a} = {b}

View file

@ -0,0 +1,14 @@
local _={}
_[5]={}
_[4]={data="42 = 42",tags=_[5]}
_[3]={_[4]}
_[2]={"return"}
_[1]={"text",_[3]}
return {_[1],_[2]}
--[[
{ "text", { {
data = "42 = 42",
tags = {}
} } }
{ "return" }
]]--