After having applied the patches for J701 from
http://www.2bestsystems.com/foundation/j/
and playing with a divide and conquer version of factorial
facf=: fac43 @(1x&,)`1:@.(2>])
fac43 =: (($:@,&{. * $:@,~&{:) (,>:)@<.@-:@+/)`{.@.({.={:)
it noticed the following timings for facf and !:
original J7 engine:
timer '! 30000x'
19.9206
timer 'facf 30000x'
11.8613
patched J7 engine:
timer '! 30000x'
7.25327
timer 'facf 30000x'
3.71744
FYI
--
Met vriendelijke groet,
@@i = Arie Groeneveld
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm