Hacker News new | ask | show | jobs
by xedrac 1777 days ago
All special forms (if, let, progv, etc...) are very similar to keywords in other languages. But there's only a couple dozen of them.

From Wikipedia: "Some Lisp control structures are special operators, equivalent to other languages' syntactic keywords."

1 comments

Personally I don't think that really counts. IIUC you can override those names, so they aren't reserved, and you can implement any one of these as a macro so you don't need to remember anything outside of the core language.

(You can't implement them all as macros, but IIRC there are disjoint built-in sets that can give you the full behaviour)

Sure. I think the point he was trying to make is that some languages are more complex than others. And in that context, the fact that Lisp has the flexibility to override just about anything actually makes the language more complex. Because now you can't make any assumptions about anything. In some ways Lisp is the most complex language in existence because it encompasses an infinite number of sub languages (ergo Racket's tagline "The programmable programming language"). In other ways it's the most simple language ever.