From bc076747f6cc00508aef909a3a5bd3edf8c9bd66 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Sat, 18 Feb 2017 12:14:59 -0800 Subject: [PATCH] altos/lisp: Start adding scheme symbols Migrating to something more like scheme Signed-off-by: Keith Packard --- src/lisp/ao_lisp.h | 4 ++++ src/lisp/ao_lisp_builtin.c | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/lisp/ao_lisp.h b/src/lisp/ao_lisp.h index 8f5c3d8e..980514cc 100644 --- a/src/lisp/ao_lisp.h +++ b/src/lisp/ao_lisp.h @@ -79,6 +79,10 @@ extern uint8_t ao_lisp_const[AO_LISP_POOL_CONST] __attribute__((aligned(4))); #define _ao_lisp_atom_restore _atom("restore") #define _ao_lisp_atom_call2fcc _atom("call/cc") #define _ao_lisp_atom_collect _atom("collect") +#define _ao_lisp_atom_symbolp _atom("symbol?") +#define _ao_lisp_atom_builtin _atom("builtin?") +#define _ao_lisp_atom_symbolp _atom("symbol?") +#define _ao_lisp_atom_symbolp _atom("symbol?") #else #include "ao_lisp_const.h" #ifndef AO_LISP_POOL diff --git a/src/lisp/ao_lisp_builtin.c b/src/lisp/ao_lisp_builtin.c index 7cd131f5..006c32f9 100644 --- a/src/lisp/ao_lisp_builtin.c +++ b/src/lisp/ao_lisp_builtin.c @@ -88,6 +88,10 @@ static const ao_poly builtin_names[] = { [builtin_restore] = _ao_lisp_atom_restore, [builtin_call_cc] = _ao_lisp_atom_call2fcc, [builtin_collect] = _ao_lisp_atom_collect, + [builtin_symbolp] = _ao_lisp_atom_symbolp, + [builtin_listp] = _ao_lisp_atom_listp, + [builtin_stringp] = _ao_lisp_atom_stringp, + [builtin_numberp] = _ao_lisp_atom_numberp, }; -- 2.30.2