Juicemacs.elisp

This subproject holds the Emacs Lisp interpreter (to be) used by Juicemacs. This document tries to provide a brief introduction of its implementation and several behaviors different from GNU Emacs Lisp.

1. Running

The build process of GNU Emacs generates a bunch of file that are crucial to the interpreter and you will need to first build a GNU Emacs if you want this project to do anything useful. (For example, Unicode properties and charset mappings in Emacs are all loaded from generated .el or mapping files.)

Currently, the project can fully run through the Emacs loadup.el when run in pbootstrap/pdump mode. You may try out a partially initialized environment with ../app/, which contains a simple ELisp REPL.

See ../README.html for instructions.

2. Structure

Juicemacs.elisp is written with the Truffle Language Implementation Framework and loosely follows how language implementations structure their code.

Emacs 31.0.50 (Org mode 9.7.11)