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