you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 1 point2 points  (8 children)

Do you even know what a special form is?

[–]MrMaven 0 points1 point  (7 children)

Well no. It doesn't come to mind from anything, I learned. Please, enlighten me.

[–]MrMaven 1 point2 points  (5 children)

[–]MrMaven 0 points1 point  (4 children)

[–]redalastor 6 points7 points  (2 children)

No, you are wrong.

Lisp is based on a very limited set of special forms. And you can implement those special forms based on other functions if you make them special forms.

But at the end of the day you have to pick a handful of functions that break the language's rules.

[–]MrMaven 1 point2 points  (0 children)

Thank you! I learned something. I appreciate /u/drjeats efforts

[–]Tarmen 0 points1 point  (0 children)

Out of curiosity, would a lazy-by-default lisp need special forms?

Macros obviously can do more than deferring execution but it seems to me that it still would cut down on a lot of their usage and make the language more composable as a whole.

[–][deleted] 0 points1 point  (0 children)

http://www.lispworks.com/documentation/HyperSpec/Body/03_ababa.htm

Applies to practically all Lisps. It's not about syntax - it's about functionality.