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

Another possibility is that the designers carefully examined predecessors to learn from their mistakes, and went through a long refinement period before stabilizing the design. This is Common Lisp.


Nothing warty about functions named "car, cdr, caar, cadr, cdar, cddr, caaar, caadr, cadar, caddr, cdaar, cdadr, cddar, cdddr, caaaar, caaadr, caadar, caaddr, cadaar, cadadr, caddar, cadddr, cdaaar, cdaadr, cdadar, cdaddr, cddaar, cddadr, cdddar, cddddr"[1]

a domain specific language for walking into nested lists based on an implementation detail of how linked list pointers and values were packed into a single 36-bit memory location on an IBM 704 computer from the 1950s.

[1] https://franz.com/support/documentation/ansicl/dictentr/carc...

[2] https://en.wikipedia.org/wiki/CAR_and_CDR


Common Lisp is basically a constellation of warts that people put up with in exchange for its macro system and REPL-driven development.


Common Lisp does have plenty of warts.


You can not have the old warts, but your correction may itself be a wart. Sometimes you learn the hard way why the last version was that wey


Dude, Common Lisp has so many warts that it makes fairy tale witches envious.




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

Search: