From b8d9379b2bc42cef6c7e9910a57bb44a792f73c8 Mon Sep 17 00:00:00 2001 From: Eduardo Cavazos Date: Wed, 9 Jul 2008 12:22:07 -0500 Subject: [PATCH] bake and bake.fry: `[ == bake quotation '[ == fry quotation --- extra/bake/bake.factor | 3 ++- extra/bake/fry/fry-tests.factor | 42 ++++++++++++++++----------------- extra/bake/fry/fry.factor | 2 +- 3 files changed, 24 insertions(+), 23 deletions(-) diff --git a/extra/bake/bake.factor b/extra/bake/bake.factor index 0834c84c9a..748a811b34 100644 --- a/extra/bake/bake.factor +++ b/extra/bake/bake.factor @@ -92,5 +92,6 @@ MACRO: bake ( seq -- quot ) [bake] ; ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -: `{ \ } [ >array ] parse-literal \ bake parsed ; parsing +: `{ \ } [ >array ] parse-literal \ bake parsed ; parsing : `V{ \ } [ >vector ] parse-literal \ bake parsed ; parsing +: `[ \ } [ >quotation ] parse-literal \ bake parsed ; parsing \ No newline at end of file diff --git a/extra/bake/fry/fry-tests.factor b/extra/bake/fry/fry-tests.factor index 13202a78f5..74408dc9f9 100755 --- a/extra/bake/fry/fry-tests.factor +++ b/extra/bake/fry/fry-tests.factor @@ -13,74 +13,74 @@ IN: bake.fry.tests ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -[ [ 3 + ] ] [ 3 `[ , + ] ] unit-test +[ [ 3 + ] ] [ 3 '[ , + ] ] unit-test -[ [ 1 3 + ] ] [ 1 3 `[ , , + ] ] unit-test +[ [ 1 3 + ] ] [ 1 3 '[ , , + ] ] unit-test -[ [ 1 + ] ] [ 1 [ + ] `[ , @ ] ] unit-test +[ [ 1 + ] ] [ 1 [ + ] '[ , @ ] ] unit-test -[ [ 1 + . ] ] [ 1 [ + ] `[ , @ . ] ] unit-test +[ [ 1 + . ] ] [ 1 [ + ] '[ , @ . ] ] unit-test -[ [ + - ] ] [ [ + ] [ - ] `[ @ @ ] ] unit-test +[ [ + - ] ] [ [ + ] [ - ] '[ @ @ ] ] unit-test [ [ "a" write "b" print ] ] -[ "a" "b" `[ , write , print ] ] unit-test +[ "a" "b" '[ , write , print ] ] unit-test [ [ 1 2 + 3 4 - ] ] -[ [ + ] [ - ] `[ 1 2 @ 3 4 @ ] ] unit-test +[ [ + ] [ - ] '[ 1 2 @ 3 4 @ ] ] unit-test [ 1/2 ] [ - 1 `[ , _ / ] 2 swap call + 1 '[ , _ / ] 2 swap call ] unit-test [ { { 1 "a" "A" } { 1 "b" "B" } { 1 "c" "C" } } ] [ - 1 `[ , _ _ 3array ] + 1 '[ , _ _ 3array ] { "a" "b" "c" } { "A" "B" "C" } rot 2map ] unit-test [ { { 1 "a" } { 1 "b" } { 1 "c" } } ] [ - `[ 1 _ 2array ] + '[ 1 _ 2array ] { "a" "b" "c" } swap map ] unit-test [ 1 2 ] [ - 1 2 `[ _ , ] call + 1 2 '[ _ , ] call ] unit-test [ { { 1 "a" 2 } { 1 "b" 2 } { 1 "c" 2 } } ] [ - 1 2 `[ , _ , 3array ] + 1 2 '[ , _ , 3array ] { "a" "b" "c" } swap map ] unit-test -: funny-dip `[ @ _ ] call ; inline +: funny-dip '[ @ _ ] call ; inline [ "hi" 3 ] [ "h" "i" 3 [ append ] funny-dip ] unit-test [ { 1 2 3 } ] [ - 3 1 `[ , [ , + ] map ] call + 3 1 '[ , [ , + ] map ] call ] unit-test [ { 1 { 2 { 3 } } } ] [ - 1 2 3 `[ , [ , [ , 1array ] call 2array ] call 2array ] call + 1 2 3 '[ , [ , [ , 1array ] call 2array ] call 2array ] call ] unit-test -{ 1 1 } [ `[ [ [ , ] ] ] ] must-infer-as +{ 1 1 } [ '[ [ [ , ] ] ] ] must-infer-as [ { { { 3 } } } ] [ - 3 `[ [ [ , 1array ] call 1array ] call 1array ] call + 3 '[ [ [ , 1array ] call 1array ] call 1array ] call ] unit-test [ { { { 3 } } } ] [ - 3 `[ [ [ , 1array ] call 1array ] call 1array ] call + 3 '[ [ [ , 1array ] call 1array ] call 1array ] call ] unit-test -! [ 10 20 30 40 `[ , V{ , { , } } , ] ] [ [ 10 V{ 20 { 30 } } 40 ] ] unit-test* +! [ 10 20 30 40 '[ , V{ , { , } } , ] ] [ [ 10 V{ 20 { 30 } } 40 ] ] unit-test* -[ 10 20 30 40 `[ , V{ , { , } } , ] ] +[ 10 20 30 40 '[ , V{ , { , } } , ] ] [ [ 10 20 30 >r r> 1 narray >r >r r> r> 2 narray >vector 40 ] ] unit-test* -[ { 1 2 3 } { 4 5 6 } { 7 8 9 } `[ , { V{ @ } { , } } ] call ] +[ { 1 2 3 } { 4 5 6 } { 7 8 9 } '[ , { V{ @ } { , } } ] call ] [ { 1 2 3 } { V{ 4 5 6 } { { 7 8 9 } } } diff --git a/extra/bake/fry/fry.factor b/extra/bake/fry/fry.factor index 6b069334e6..b9f9882e88 100644 --- a/extra/bake/fry/fry.factor +++ b/extra/bake/fry/fry.factor @@ -77,4 +77,4 @@ DEFER: shallow-fry MACRO: fry ( seq -- quot ) [fry] ; -: `[ \ ] [ >quotation ] parse-literal \ fry parsed ; parsing \ No newline at end of file +: '[ \ ] [ >quotation ] parse-literal \ fry parsed ; parsing \ No newline at end of file