2010-02-17 09:57:02 -05:00
|
|
|
! Copyright (C) 2009, 2010 Slava Pestov.
|
2009-04-26 14:31:10 -04:00
|
|
|
! See http://factorcode.org/license.txt for BSD license.
|
2014-06-02 11:40:05 -04:00
|
|
|
USING: accessors kernel math sequences tuple-arrays ;
|
2009-04-26 14:31:10 -04:00
|
|
|
IN: benchmark.tuple-arrays
|
|
|
|
|
2010-02-17 09:57:02 -05:00
|
|
|
TUPLE: point { x float } { y float } { z float } ; final
|
2009-04-26 14:31:10 -04:00
|
|
|
|
|
|
|
TUPLE-ARRAY: point
|
|
|
|
|
2012-07-19 20:35:47 -04:00
|
|
|
: tuple-arrays-benchmark ( -- )
|
2014-06-02 11:40:05 -04:00
|
|
|
1,000 iota [
|
|
|
|
drop 5,000 <point-array> [
|
2009-08-13 20:21:44 -04:00
|
|
|
[ 1 + ] change-x
|
|
|
|
[ 1 - ] change-y
|
|
|
|
[ 1 + 2 / ] change-z
|
2009-10-29 15:34:04 -04:00
|
|
|
] map [ z>> ] map-sum
|
2014-06-02 11:40:05 -04:00
|
|
|
] map-sum 0x1.312dp21 assert= ;
|
2009-04-26 14:31:10 -04:00
|
|
|
|
2012-07-19 20:35:47 -04:00
|
|
|
MAIN: tuple-arrays-benchmark
|