[comp.lang.apl] Interesting feature of J

josh@klaatu.rutgers.edu (J Storrs Hall) (09/26/90)

As far as I can tell (still without manual), J lacks what would
in Lisp be called "destructive operations".  I.e. you can't do 
the equivalent of APL's  A[B]<--C  .

You can do a=.c b}a  but the difference is that you haven't 
changed (part of) the contents of an object but have created
a new object and reassigned a name.  

Assuming my guess is right, that should make for a notably 
easier job for an optimizer trying to do structure-sharing;
it makes one suspect a compiler of some kind is planned.

(On the other hand, the rest of J seems designed to be as
hard as possible to compile!)

Anyone know anything definite?

--JoSH