# Emacs Lisp
A [[LISP]] dialect used to program the [[Emacs]] editor.
I collect a list of projects to build so that I can learn the language:
- [[PROJ - Emacs Lisp Ideas]]
## Modern libraries for [[Emacs Lisp]]
These all come from [[Xenodium]]:
- [Modern Emacs lisp libraries](https://xenodium.com/modern-elisp-libraries/)
and
- [Toby 'qubit' Cubitt - computing, code, emacs](https://www.dr-qubit.org/tags/computing-code-emacs.html)
- [map.el](https://nicolas.petton.fr/ressources/emacsconf2015/) for key/values, alists, hash-tables and arrays (built-in as of Emacs 25.1).
- [seq.el](https://nicolas.petton.fr/ressources/emacsconf2015/) for sequence manipulation functions (built-in as of Emacs 25.1).
- [subr-x.el](https://github.com/emacs-mirror/emacs/blob/master/lisp/emacs-lisp/subr-x.el) has a handful of string functions (built-in as of Emacs 24.4).
- [let-alist.el](https://endlessparentheses.com/new-on-elpa-and-in-emacs-25-1-let-alist.html) wonderful syntax for alists, great for json (built-in as of Emacs 25.1).
Thirdparty libraries:
- [s.el](https://github.com/magnars/s.el#functions) string manipulation.
- [f.el](https://github.com/rejeep/f.el) file/path handling.
- [dash.el](https://github.com/magnars/dash.el#functions) for lists.
- [ht.el](https://github.com/Wilfred/ht.el) for hashtables.
- [ts.el](https://github.com/alphapapa/ts.el) for date and time.
Some more:
- [rtree.el](https://github.com/emacs-mirror/emacs/blob/master/lisp/rtree.el) binary tree that stores ranges (Built-in).
- [ov.el](https://github.com/emacsorphanage/ov) simple way to manipulate overlay.
- Toby Cubitt's [libraries](http://www.dr-qubit.org/tags/computing-code-emacs.html) (heap, overlays, queue, avl-tree, trie, dict-tree, etc).
- [shadchen.el](https://github.com/VincentToups/shadchen-el) pattern-matching.
- [m-buffer.el](https://phillord.github.io/m-buffer-el) buffers.
- [esxml.el](https://github.com/tali713/esxml) xml and html.
- [a.el](https://github.com/plexus/a.el) associative structures.
- [asoc.el](https://github.com/troyp/asoc.el) association list library.
- [yk-color.el](https://github.com/yurikhan/yk-color) linear RGB color manipulation.