You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

962 B

TODO rename slime to plisk

TODO rename modifying functions to prefix '!'

TODO go through sicp and use the examples as test files

TODO test macro expanding to macro

TODO BUG 1: eval dot notation

  (eval `(+ . ,(list 1 2 3)))
  ;; should output 6
  ;; throws error instead

TODO BUG 2: eval dot notation

  (begin
   (define a (list 1 2 3))
   (eval `(+ . ,a)))
  ;; should output 6
  ;; outputs 0

TODO BUG 3: unnecessary copying?

define((test val),"") { fetch(val) ; printf("addr of arg: %lld\n", (unsigned long long)&val); return Memory::nil; };

then:

(define a "a")
(test a)          ;; will output an adress
(if 1 (test a) 2) ;; will output a different adress

TODO BUG 4: arg parsing

(define (range (:from 0) to) ...)

should error since we can't have positional args after keywords. right now, 'to' is silently ignored..