conform working again

This commit is contained in:
Danny Yoo 2011-09-27 17:16:25 -04:00
parent baff56f6d0
commit 804bd5e80a
2 changed files with 2 additions and 25 deletions

View File

@ -1721,9 +1721,7 @@
empty-instruction-sequence] empty-instruction-sequence]
[(eq? context 'drop-multiple) [(eq? context 'drop-multiple)
(make-PopEnvironment (make-Const 1) (make-PopEnvironment (make-Const 1)
(new-SubtractArg (make-Const 0))]
(make-Reg 'argcount)
(make-Const 1)))]
[(eq? context 'keep-multiple) [(eq? context 'keep-multiple)
;; dynamic number of arguments that need ;; dynamic number of arguments that need
;; to be preserved ;; to be preserved

View File

@ -130,12 +130,7 @@
(define set-internal-node-green-edges! (lambda (node edges) (vector-set! node '1 edges))) (define set-internal-node-green-edges! (lambda (node edges) (vector-set! node '1 edges)))
(define set-internal-node-red-edges! (lambda (node edges) (vector-set! node '2 edges))) (define set-internal-node-red-edges! (lambda (node edges) (vector-set! node '2 edges)))
(define set-internal-node-blue-edges! (lambda (node edges) (define set-internal-node-blue-edges! (lambda (node edges)
(displayln "in set-internal-node-blue-edges") (vector-set! node '3 edges)))
(displayln node)
(displayln edges)
(vector-set! node '3 edges)
;(displayln "ok, done")
))
(define make-node (define make-node
(lambda (name blue-edges) (lambda (name blue-edges)
(let ((name (if (symbol? name) (symbol->string name) name)) (let ((name (if (symbol? name) (symbol->string name) name))
@ -155,17 +150,11 @@
(define make-edge-setter (define make-edge-setter
(lambda (mutator!) (lambda (mutator!)
(lambda (node value) (lambda (node value)
(displayln "here")
(displayln any-node?)
(displayln none-node?)
(displayln mutator!)
(if (any-node? node) (if (any-node? node)
(begin (error '"Can't set edges from the ANY node")) (begin (error '"Can't set edges from the ANY node"))
(if (none-node? node) (begin 'OK) (begin (mutator! node value))))))) (if (none-node? node) (begin 'OK) (begin (mutator! node value)))))))
(define set-red-edges! (make-edge-setter set-internal-node-red-edges!)) (define set-red-edges! (make-edge-setter set-internal-node-red-edges!))
(define set-green-edges! (make-edge-setter set-internal-node-green-edges!)) (define set-green-edges! (make-edge-setter set-internal-node-green-edges!))
(displayln make-edge-setter)
(displayln set-internal-node-blue-edges!)
(define set-blue-edges! (make-edge-setter set-internal-node-blue-edges!)) (define set-blue-edges! (make-edge-setter set-internal-node-blue-edges!))
(define make-blue-edge vector) (define make-blue-edge vector)
(define blue-edge-operation (lambda (edge) (vector-ref edge '0))) (define blue-edge-operation (lambda (edge) (vector-ref edge '0)))
@ -476,19 +465,10 @@
(define d '()) (define d '())
(define reset (define reset
(lambda () (lambda ()
(displayln make-node)
(displayln make-blue-edge)
(displayln set-blue-edges!)
(set! a (make-node 'a '())) (set! a (make-node 'a '()))
(displayln "after make-node")
(set! b (make-node 'b '())) (set! b (make-node 'b '()))
(displayln "after make-node")
(displayln "blue edge")
(displayln (make-blue-edge 'phi any-node b))
(set-blue-edges! a (list (make-blue-edge 'phi any-node b))) (set-blue-edges! a (list (make-blue-edge 'phi any-node b)))
(displayln "after set-blue-edges!")
(set-blue-edges! b (list (make-blue-edge 'phi any-node a) (make-blue-edge 'theta any-node b))) (set-blue-edges! b (list (make-blue-edge 'phi any-node a) (make-blue-edge 'theta any-node b)))
(displayln "half")
(set! c (make-node '"c" '())) (set! c (make-node '"c" '()))
(set! d (make-node '"d" '())) (set! d (make-node '"d" '()))
(set-blue-edges! c (list (make-blue-edge 'theta any-node b))) (set-blue-edges! c (list (make-blue-edge 'theta any-node b)))
@ -499,7 +479,6 @@
(define go (define go
(lambda () (lambda ()
(reset) (reset)
(displayln "after reset")
(let ((result (let ((result
'("(((b v d) ^ a) v c)" '("(((b v d) ^ a) v c)"
"(c ^ d)" "(c ^ d)"