Elisp: Why Common Lisp Sucks (2024)
FAAK Common Lisp
- most worst shit that came to elisp is from common lisp faaks.
- faak Common Lisp CLOS, faak EIEIO
- faak Common Lisp setf
- faak Common Lisp generics
- faak Common Lisp caar cadr cdar cddr cdaaar of the cons problem.
- faak Common Lisp multi-value-namespace.
- all the worst complexities.
- and, the fundamental problems of lisp: cons, and # . ' ` , @ reader macro idiocy, and the lisp macro idiocy.
- lisp macros crippled lisp in such a degree it needs meta programing in order to write advanced programs.
- and it comes with reader macros in order to work, which faaked up the lisp regularity syntax advantage with ad hoc syntax.
- In this regard, similar to C.
Things to Avoid in Elisp
in your emacs lisp code, you should:
- Never define macros when it is not absolutely necessary.
- Never define advice. It adds complexity. Define a new function instead.
- Never add #' to function names. It pollutes code with ad hoc syntax.
- Never use symbol when a string suffice. E.g. hash table key. If you have to, use self-evaluating :symbol
- Never mutate local variable value.
- Never use setf.
- Never add =\\ markup in the docstring.
- Never use Common Lisp cl-lib.el.
- Never use dash.el, s.el, f.el.