emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: list of elisp primitives ?


From: Drew Adams
Subject: RE: list of elisp primitives ?
Date: Thu, 26 Dec 2019 10:09:36 -0800 (PST)

> I'm not suggesting that implementing lisp functions
> in C is related to ease of learning or anything.
> 
> My idea, which may be wrong, is that lisp code uses
> building blocks to provide more advanced functions
> and that the most basic blocks are lisp functions
> implemented in C.

Don't confuse building blocks for implementing Lisp
in C with building blocks for defining Lisp in Lisp,
which I suspect is really what you're after: a set
of primitive Lisp constructs that can be used to
define the rest of the language.

> Hence, knowing the building blocks (or a few dozen
> useful ones) can give a clearer idea of what to do
> with elisp in general.

There are various alternative subsets of Lisp
constructs that can be used to do this.  If `cond'
is a primitive then you can implement `if', and vice
versa, for example.

A Lisp definition of `eval' might get you started:

https://igor.io/2013/04/03/sexpr-meta-eval.html

As Marcin pointed out, the search term you want,
when looking for info about this, is "metacircular
interpreter".



reply via email to

[Prev in Thread] Current Thread [Next in Thread]