the pfns timings surprised me.
pfns =: 3 : '({.,_1&+@({.@}.),{:)`(_1&+@{.,15"_,{:)@.(0&=@({.@}.)) y'
On simple function tests where I take an implicit definition and just make it
explicit by adding y at the end, I've gotten an under 10% slowdown.
I would guess that you could see a comparable result to the tacit version by
defining it as:
pfns =: 3 : '({.,_1&+@({.@}.),{:)`(_1&+@{.,15"_,{:)@.(0&=@({.@}.))"1 y'
instead of calling it with pfns"1
________________________________
From: "William Tanksley, Jr" <[email protected]>
To: Programming forum <[email protected]>
Sent: Sunday, January 12, 2014 11:59:01 PM
Subject: [Jprogramming] On benchmarking results from J programming styles
A friend of mine wrote the following paper describing his attempt to
characterize the differences between a few different styles of
implementing the same code in J a few different ways -- explicit,
implicit, and a few variations. He also baselined against a Forth
implementation.
I found his writeup very interesting. What do you think?
http://sam-falvo.github.io/2014/01/05/subroutine-performance-in-j/
-Wm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm