TyOverby / ares

A Lisp made for easy integration with Rust.
9 stars 1 forks source link

Feat/quasiquotation #27

Closed bwo closed 9 years ago

bwo commented 9 years ago

for procedural macros, also makes creating lists simpler.

TyOverby commented 9 years ago

This looks great!

Though I am a bit worried about the comma being used for unquote. Looking over the shoulder at lisp newbies, inserting commas is one of the big mistakes that they make. Getting random unquotes (and errors about the unquotes) might freak people out. You own the Ares syntax, so I'll leave it up to you, but do you think that we should

  1. Stick with , as unquote
  2. Do what clojure did and make it whitespace
  3. Provide an error or warning of some form
  4. Something else?

Either way, congrats on finishing this! I can't wait to use it!

bwo commented 9 years ago

Clojure uses ~ and ~@ for unquote/unquote-splicing, which I'll admit is what I'm more used to these days, but the comma/comma-ampersand is more traditional. I dunno, the comma-as-whitespace thing from Clojure is also pretty useful, and it's a simple change to make. Might well be worth making (I inadvertently used a ~ in writing one of the tests, so).

TyOverby commented 9 years ago

Most of my lisp experience is clojure too.

Maybe change to ~ and leave the comma->whitespace for a later decision?