diff --git a/extra/benchmark/sum-file/sum-file.factor b/extra/benchmark/sum-file/sum-file.factor index 860bdaaf34..e1ce2b76fb 100644 --- a/extra/benchmark/sum-file/sum-file.factor +++ b/extra/benchmark/sum-file/sum-file.factor @@ -1,14 +1,22 @@ -USING: io io.files math math.parser kernel prettyprint -benchmark.random io.encodings.ascii ; +USING: io io.encodings.ascii io.files io.files.temp math +math.parser kernel sequences ; IN: benchmark.sum-file +<< +"sum-file.txt" temp-file ascii [ + 100000 iota [ number>string print ] each +] with-file-writer +>> + : sum-file-loop ( n -- n' ) readln [ string>number + sum-file-loop ] when* ; -: sum-file ( file -- ) - ascii [ 0 sum-file-loop ] with-file-reader . ; +: sum-file ( file -- n ) + ascii [ 0 sum-file-loop ] with-file-reader ; : sum-file-benchmark ( -- ) - 5 [ random-numbers-path sum-file ] times ; + 15 [ + "sum-file.txt" temp-file sum-file 4999950000 assert= + ] times ; MAIN: sum-file-benchmark