4 ms·
FTFY: Learn Emacs Lisp Syntax in 15 Minutes Lisp syntax is simple; the learning curve is in the difference of technique. I'm assuming the learner is coming fro
by elwell 11y ago
FTFY: Learn Emacs Lisp Syntax in 15 Minutes
Lisp syntax is simple; the learning curve is in the difference of technique. I'm assuming the learner is coming from an imperative language background.
- yarrel 11y agoThe syntax is what scares people off, though.
- kleiba 11y agoAgreed. In Emacs hacking -- which presumably is what most people would want to use Elisp for -- the syntax is typically not the problem. Knowing how to interact with Emacs' libraries and its way of doing things is much more intricate. At least once you go beyond smaller aux functions and such.
- chriswarbo 11y ago> I'm assuming the learner is coming from an imperative language background. Well, Emacs Lisp is pretty imperative: it doesn't optimise tail calls, so loops are often needed; its distinct namespaces/special-forms for functions and "values" (which includes anonymous functions) makes functional style less attractive in some situations; many tasks are achieved through destructive update of (often temporary) buffers; Emacs itself is controlled by mutating dynamic or global variables; etc. I would say Emacs Lisp is much closer to imperative languages like Python, than it is to syntactically-similar languages like Scheme, for example.
- lispm 11y ago> so loops are often needed I'm a Lisp user and have learned and used Scheme in projects. I strongly prefer loops over tail recursive iteration. I also prefer higher-order functions like map/reduce/filter/... over tail recursive explicit variants.
- agumonkey 11y agoTrue, and emacs is quite a large thing, with API from IPC to URL, XML, binary parsing, text rendering, non overlapping window management, etc etc. That's from vanilla distribution, then there's user made packages and since it's a lisp ... So RTFM hard, or read existing code hard or harass #emacs hard (non exclusive choices).