Reproduce crash from icyc

This commit is contained in:
Justin Ethier 2015-03-05 22:57:55 -05:00
parent 3abfc51bef
commit d947337688

View file

@ -1,19 +1,24 @@
;; Temporary testing, delete this once it works ;;; Temporary testing, delete this once it works
(define (call2 fn x y) ;(define (call2 fn x y)
(write ; (write
(fn x y))) ; (fn x y)))
;
(define (call fn a) ;(define (call fn a)
(fn a)) ; (fn a))
;
(call write 'hello) ;(call write 'hello)
;
;; Demonstrate sending an interpreted function to compiled code ;;; Demonstrate sending an interpreted function to compiled code
;; I think in order for this to work, the compiled code would have to ;;; I think in order for this to work, the compiled code would have to
;; detect an interpreted proc, and use eval to execute it ;;; detect an interpreted proc, and use eval to execute it
;
;; TODO: to debug this, may try placing printfs in runtime's apply ;;; TODO: to debug this, may try placing printfs in runtime's apply
(eval '(call2 (lambda (x y) (+ y x)) 2 3)) ;(eval '(call2 (lambda (x y) (+ y x)) 2 3))
;(eval '(call (lambda (x) (+ 1 x)) (display (+ 1 1)))) ;;(eval '(call (lambda (x) (+ 1 x)) (display (+ 1 1))))
;(eval '(call write 1)) ;;(eval '(call write 1))
;(eval '(call mywrite 1)) ;;(eval '(call mywrite 1))
;
(eval '(define (a x) x))
(eval '(a 1))
(eval '(a 1))
(eval '(begin (define (a z) z) (a 1) (a 1)))