Fix define-transform bug
parent
8761885287
commit
c84ba1d76b
|
@ -273,3 +273,9 @@ USE: sorting.private
|
|||
10 20 >vector <flat-slice>
|
||||
[ [ - ] swap old-binsearch ] compile-1 2nip
|
||||
] unit-test
|
||||
|
||||
! Regression
|
||||
[ 1 2 { real imaginary } ] [
|
||||
C{ 1 2 }
|
||||
[ { real imaginary } [ get-slots ] keep ] compile-1
|
||||
] unit-test
|
||||
|
|
|
@ -347,6 +347,9 @@ DEFER: bar
|
|||
|
||||
[ t ] [ [ [ r> ] infer short-effect ] catch inference-error? ] unit-test
|
||||
|
||||
! Regression
|
||||
[ t ] [ [ [ get-slots ] infer ] catch inference-error? ] unit-test
|
||||
|
||||
! Test some curry stuff
|
||||
[ { 1 1 } ] [ [ 3 [ ] curry 4 [ ] curry if ] infer short-effect ] unit-test
|
||||
|
||||
|
|
|
@ -6,12 +6,11 @@ inference.dataflow tuples.private ;
|
|||
IN: inference.transforms
|
||||
|
||||
: pop-literals ( n -- rstate seq )
|
||||
dup zero? [ drop recursive-state get f ] [
|
||||
[ ensure-values ] keep
|
||||
[ d-tail ] keep
|
||||
(consume-values)
|
||||
dup [ value-literal ] map
|
||||
swap first value-recursion swap
|
||||
dup zero? [
|
||||
drop recursive-state get { }
|
||||
] [
|
||||
dup ensure-values
|
||||
f swap [ 2drop pop-literal ] map reverse
|
||||
] if ;
|
||||
|
||||
: transform-quot ( quot n -- newquot )
|
||||
|
|
Loading…
Reference in New Issue