Add reduce
Broken
diff --git a/lib/lisp/std/std.lisp b/lib/lisp/std/std.lisp
index d995f0e..56e8294 100644
--- a/lib/lisp/std/std.lisp
+++ b/lib/lisp/std/std.lisp
@@ -21,9 +21,8 @@
-;; Instead of a function this is a macro for a slight performance increase
-(defmacro not (val)
- (list 'nilp val))
+(defun not (val)
+ (nilp val))
;; TODO: make tail recursive (for this `flet` would be nice)
(defun length (list)
@@ -51,5 +50,9 @@
(if (not stream)
(read-stdin)))
-(print "Loading list functions")
-(print (load "list-functions.lisp"))
+(defun funcall (fun & list)
+ (print fun)
+ (print list)
+ (apply fun list))
+
+(load "list-functions.lisp")