benchmark.memoize: add zero arg memoized function.
parent
632f0d9810
commit
667a00a69c
|
@ -3,6 +3,7 @@
|
||||||
USING: kernel math memoize sequences ;
|
USING: kernel math memoize sequences ;
|
||||||
IN: benchmark.memoize
|
IN: benchmark.memoize
|
||||||
|
|
||||||
|
MEMO: mem0 ( -- ) ;
|
||||||
MEMO: mem1 ( n -- n ) 1 + ;
|
MEMO: mem1 ( n -- n ) 1 + ;
|
||||||
MEMO: mem2 ( n n -- n ) + ;
|
MEMO: mem2 ( n n -- n ) + ;
|
||||||
MEMO: mem3 ( n n n -- n ) + + ;
|
MEMO: mem3 ( n n n -- n ) + + ;
|
||||||
|
@ -11,7 +12,7 @@ MEMO: mem4 ( n n n n -- n ) + + + ;
|
||||||
: memoize-benchmark ( -- )
|
: memoize-benchmark ( -- )
|
||||||
1000 [
|
1000 [
|
||||||
1000 iota [
|
1000 iota [
|
||||||
[ mem1 ] keep [ mem2 ] 2keep [ mem3 ] 3keep mem4 drop
|
mem0 [ mem1 ] keep [ mem2 ] 2keep [ mem3 ] 3keep mem4 drop
|
||||||
] each
|
] each
|
||||||
] times ;
|
] times ;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue