On 11/6/07, Oleg Kobchenko <[EMAIL PROTECTED]> wrote:
> Why is u/ not equivalent to a loop?
> There is a very severe performance penalty.
> Lisp/SmallTalk can be defined by itself.
> But because in APL control structure are deficient, it cannot.
> That's the whole mud vs diamond argument; and this control flow issue
> is at its core.

This seems like a bunch of unrelated issues.

FIrst, u/ is A loop, but just as goto is more general than a
while loop, a while loop is more general than /

Second, performance has to do with language implementation.
Language design is relevant to implementation but a language
lends itself to a wide variety of implementations.

J can be defined by itself, there's even a wiki page showing
many J primitives implemented in J.  More to the point,
"defined by itself" usually refers to a minimal parser
implementation, and J's trace mechanism does that.

But I do not see how the generality of control structures
matters here.

Finally, I do not know about "mud' but diamond was
basically an alternate line-end character (albeit, one which
got special treatment from APL's goto, in that goto did
not recognize diamonds when counting lines).

-- 
Raul
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to