422b6e6ce9
* mes.c (internal_primitive_p)[STATIC_PRIMITIVES: New function. (lookup_macro)[STATIC_PRIMITIVES]: Use it. (internal_lookup_primitive)[STATIC_PRIMITIVES]: New function. (lookup)[STATIC_PRIMITIVES]: Use it. (mes_primitives)[STATIC_PRIMITIVES]: New function. (main): Use it. * base0-if.mes (disabled-cond): Rename from xcond. * GNUmakefile: Add commented profiling CFLAGS. |
||
---|---|---|
lib | ||
test | ||
.gitignore | ||
ANNOUNCE | ||
ANNOUNCE-2 | ||
AUTHORS | ||
base.mes | ||
base0-if.mes | ||
base0.mes | ||
c-lexer.scm | ||
COPYING | ||
elf.mes | ||
GNUmakefile | ||
HACKING | ||
hello.c | ||
hello.S | ||
let-syntax.mes | ||
let.mes | ||
loop2.mes | ||
main.c | ||
mes.c | ||
mes.mes | ||
mes.scm | ||
mes.test | ||
mescc.scm | ||
paren.scm | ||
quasiquote.mes | ||
README | ||
scm.mes | ||
syntax.mes | ||
TODO |
Mes -- Maxwell Equations of Software Mes is inspired by The Maxwell Equations of Software -- John McCarthy page 13 http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf Its aim is to have GuixSD boostrap from a minimal trusted binary into Scheme. The strategy is to use OrianJs self-hosting hex assembler to write a minimal LISP called MES to bootstrap a full fledged Scheme, written in MES. Mes is free software, it is distributed unde the terms of the GNU General Public Licence version 3 or later. See the file COPYING. Current targets. * make check * C compiler make mescc make guile-mescc from there, work on mescc.scm, main.c. * syntax-case: simple portable version by Andre van Tonder TODO * syntax-case: using portable psyntax.pp make psyntax * syntax-case using define-macro make syntax-case make guile-syntax-case * PEG make peg make guile-peg