fixed bug the ordering of metafunction side-conditions during rendering

svn: r15353
This commit is contained in:
Robby Findler 2009-07-01 16:10:23 +00:00
parent 2b5e836b74
commit 158b6de824
4 changed files with 7 additions and 5 deletions

View File

@ -41,11 +41,12 @@
(define red2
(reduction-relation
lang
(--> (number_a number_b number_c)
(--> (number_a number_b number_c number_d)
any_z
(where (any_x any_y) (number_a number_b))
(side-condition (= (term number_c) 5))
(where any_z any_x))))
(where any_z any_x)
(side-condition (= (term number_d) 5)))))
(test (render-reduction-relation red2)
"red2.png")
@ -61,8 +62,9 @@
1
(side-condition (not (eq? (term x) (term y))))]
[(T x x)
n
(where n 2)])
(any_1 any_2)
(where any_1 2)
(where any_2 2)])
;; in this test, the metafunction has 2 clauses
;; with a side-condition on the first clause

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

View File

@ -1238,7 +1238,7 @@
#`(cons #,(to-lw/proc #'pat) #,(to-lw/proc #'exp))]
[(side-condition x)
(to-lw/uq/proc #'x)]))
(syntax->list hm)))
(reverse (syntax->list hm))))
(syntax->list #'(... seq-of-tl-side-cond/binds)))]
[(((rhs-bind-id/lw . rhs-bind-pat/lw/uq) ...) ...)