4 ms·
Ya that'd be interesting. How do you imagine the representation and evaluation semantics working? Something like: {call: function, arg1: value1,
by didibus 6y ago
Ya that'd be interesting. How do you imagine the representation and evaluation semantics working? Something like:
{call: function,
arg1: value1,
argN: valueN}
Instead of (function value1 valueN)
So maybe you'd have:
{
do1:
{
call: defn,
name: hello,
args: {first: String, last:
String},
ret: IO,
impl:
{
call: print,
msg:
{
call: concat,
strings: ["Hello ", first, " ", last]
}
}
},
do2:
{
call: hello,
first: "John",
second: "Doe"
}
}
Where the number after "do" is the order in which things should execute, or maybe we can simplify it by using insertion order preserving maps...
Looking at it, if people thought nested parens made for an eyesore, I'm not sure this would be any better received haha.
- didibus 6y agoReplying to myself here, I'm curious to try it if we used order insertion preserving maps. What if then we had: {function: {arg1: value, argN: value}} So we'd get a hello world as such: {defn: { name: hello, args: {first: String, last: String}, ret: IO, impl: {print: { msg: {concat: { strings: ["Hello ", first, " ", last]}}}}}, hello: {first: "John", second: "Doe"} }