Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

But parenthesis are the only required punctuation. Any of those others you mentioned can be equivalently expressed by parenthetical expressions. Homoiconicity is preserved.


I don't think that that is true, at least not for Common Lisp.

How do you express any of the following constructs using only parentheses and symbols?

#:foo #.(foo) #+ FOO (bar) #- FOO (baz)

For the original Lisp, parentheses and symbols were all that was necessary. For more recent derivatives, that is not necessarily the case.


Well, Packages are a reader-hack, so you couldn't express them with parenthesis, although you should be able to IMHO.

#+FOO (bar)

This could almost be: (when (member FOO features) (bar)) Just wrap it in an eval-when.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: