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" <wtanksle...@gmail.com> To: Programming forum <programm...@jsoftware.com> 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