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

By getting a reputation of being poorly suited to team development, unfortunately.


Lisp's reputation has a tenuous connection to reality; even so, I see no connection between it and the problem being discussed here (name collisions) which doesn't come up in CL. If anyone does make that argument, I'd like to see it: it would appear to require even more obtuseness than usual.


I was thinking specifically of unintentional variable capture causing name collisions in non-hygienic Common Lisp macros. While people can certainly write macros correctly and avoid them, this takes experience, and minor mistakes can introduce some really subtle bugs.

[edit: noted that I'm talking specifically about Common Lisp]


In Scheme, it's basically impossible to write a non-hygienic macro, and in Clojure, there are no name collisions and it takes extra work to variable capture.


Oh, that. That is one of those problems people talk about but no one has.

While people can certainly write macros correctly and avoid them, this takes experience

No, it doesn't. It's trivial to call gensym.

Edit: I'm not saying that CL's way is the best, just that this question gets way more attention than it deserves.




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

Search: