diff options
Diffstat (limited to 'sca-cpp/trunk/modules/scheme/primitive.hpp')
-rw-r--r-- | sca-cpp/trunk/modules/scheme/primitive.hpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/sca-cpp/trunk/modules/scheme/primitive.hpp b/sca-cpp/trunk/modules/scheme/primitive.hpp index 6f3f71f4cd..899d6f83da 100644 --- a/sca-cpp/trunk/modules/scheme/primitive.hpp +++ b/sca-cpp/trunk/modules/scheme/primitive.hpp @@ -145,26 +145,30 @@ const value uuidProc(unused const list<value>& args) { return mkuuid(); } -const value cadrProc(unused const list<value>& args) { +const value cadrProc(const list<value>& args) { return cadr((list<value> )car(args)); } -const value caddrProc(unused const list<value>& args) { +const value caddrProc(const list<value>& args) { return caddr((list<value> )car(args)); } -const value cadddrProc(unused const list<value>& args) { +const value cadddrProc(const list<value>& args) { return cadddr((list<value> )car(args)); } -const value cddrProc(unused const list<value>& args) { +const value cddrProc(const list<value>& args) { return cddr((list<value> )car(args)); } -const value cdddrProc(unused const list<value>& args) { +const value cdddrProc(const list<value>& args) { return cdddr((list<value> )car(args)); } +const value appendProc(const list<value>& args) { + return append((list<value> )car(args), (list<value>)cadr(args)); +} + const value startProc(unused const list<value>& args) { return lambda<value(const list<value>&)>(); } @@ -222,6 +226,7 @@ const list<value> primitiveProcedureNames() { + "cadddr" + "cddr" + "cdddr" + + "append" + "display" + "log" + "uuid" @@ -247,6 +252,7 @@ const list<value> primitiveProcedureObjects() { + primitiveProcedure(cadddrProc) + primitiveProcedure(cddrProc) + primitiveProcedure(cdddrProc) + + primitiveProcedure(appendProc) + primitiveProcedure(displayProc) + primitiveProcedure(logProc) + primitiveProcedure(uuidProc) |