Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
 
 
 
 
 
 

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..