2008-03-01 15:23:41 -05:00
|
|
|
USING: math kernel alien ;
|
2009-08-13 20:21:44 -04:00
|
|
|
IN: benchmark.fib6
|
2008-03-01 15:23:41 -05:00
|
|
|
|
2008-06-09 03:14:14 -04:00
|
|
|
: fib ( x -- y )
|
2008-03-01 15:23:41 -05:00
|
|
|
"int" { "int" } "cdecl" [
|
|
|
|
dup 1 <= [ drop 1 ] [
|
2009-08-13 20:21:44 -04:00
|
|
|
1 - dup fib swap 1- fib +
|
2008-03-01 15:23:41 -05:00
|
|
|
] if
|
|
|
|
] alien-callback
|
|
|
|
"int" { "int" } "cdecl" alien-indirect ;
|
|
|
|
|
2009-04-17 18:55:01 -04:00
|
|
|
: fib-main ( -- ) 32 fib drop ;
|
2008-03-01 15:23:41 -05:00
|
|
|
|
|
|
|
MAIN: fib-main
|