I've heard similar puzzlement before, from an APLer, over this apparent
violation of strict right-to-left evaluation but I think it's no different
from the APL case where I evaluate something like "+/nums" - I can't
strictly evaluate from right to left by simply considering first "nums",
then "/": I have to suspend my evaluation until I resolve the function "+"
being used with the operator "/".  This is no different from J.  J just has
more "operators".

On Wed, Feb 1, 2012 at 9:13 AM, Dan Bron <j...@bron.us> wrote:

> I asked:
> >  Why should we avoid @ ?
>
> Linda responded:
> > It encourages and fosters thinking
> > from applying functions from left to
> > right.
>
> Raul followed-up:
> >    *: -: 8
> >    *:@-: 8
> >  I am not seeing a big left-to-right vs. right-to-left difference, here.
>
> I'm with Raul.  My sense is the aversion to @ is a holdover from APL;
> surely reading left-to-right and hitting a [: is no less disruptive than a
> @ .  In fact, given that [: is meaningless by design, and it also requires
> you understand verb train rules, which are not left-to-right, it is likely
> more disruptive to the experience.
>
> I think I'll hang on to @ .
>
> Raul wrote:
> >  have to understand rank before you can
> >  fully understand how @ works.
>
> Yes, but you could always use @: to avoid the question.  In my view, a
> larger obstacle someone transitioning to @ from [: is the difference
> between e.g. [: *: +/ and *:@:+/  (which isn't a question of rank, but of
> precedence and associativity, which is related to Linda's concern).
>
> -Dan
>
>
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>



-- 
Devon McCormick, CFA
^me^ at acm.
org is my
preferred e-mail
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to