4 ms·
• Have you considered allowing returning multiple values, like in Lua and Go, and also returning errors through them? esp. instead of exceptions? (Though I susp
by akavel 10y ago
• Have you considered allowing returning multiple values, like in Lua and Go, and also returning errors through them? esp. instead of exceptions? (Though I suspect this could be problematic to match with the sweet |> pipe operator)
• Have you considered supporting Lisp/Scheme-like or Rust-like macros? or Rebol-like DSLs? (though I suppose the latter are probably strongly tied to Rebol's minimalistic syntax)
- jesserayadkins2 10y agoMultiple return values I'm not very interested in. Lily has first-class tuples, and you can return a tuple which I might later add in desugaring for. But multiple return values themselves cause a lot of problems with the internals being pretty set on 0 or 1 return. Macros are a hard no. DSLs, maybe. For the latter, I could see allowing a pluggable import handler through Lily's options. But I'm reluctant to commit to a yes or no on that at the moment, since I'd rather get over the hump of api not being fully fleshed out.
- akavel 10y agoDidn't realize about tuples, thanks for info! Are they typechecked on length? Out of curiosity, can I ask for your reasons about macros, if you have them fleshed out enough? Not really sure what you mean by "pluggable import handler" in this context, though. Tx!
- technomancy 10y agoReally glad to hear that about multiple return values. In my mind multiple return values are a solution for the problem of "oh, we haven't invented pattern matching yet", and matching against tuples is soooo much cleaner and more consistent.