Looks write-only to me, but I haven't learned it. I've also heard that if you 
really just want to get some math done, APL is as efficient keyboard-wise in 
that domain as Perl is in the domains where Perl excels (like extracting 
information from log files.) Perl is also regularly harangued for being 
write-only, but a lot of people who do read it really love it. I wonder how 
much of this stuff just has to do with terseness. The Bourne shell also has 
some of this kind of thing going on, what with the need to wait for an hour for 
something verbose to play out on the terminal screen over a slow modem being 
pretty much straight out. And the Bourne-style shell is still really popular 
for interacting with servers and doing small things.

One of the Self people, can't remember which, used APL in a class to "cheat" 
and get a language project finished in very little code, probably expecting to 
be flunked for not using the same implementation language as the rest of the 
class, but received an A instead :) which is a great example of using one's 
noggin in spite of what one thinks is in demand.

I ended up really preferring the raw s-expr style for awhile, because I never 
had to worry about it that way, and because it made the grammar I was learning 
a lot smaller. I'm pretty sure though, in places like _the office_ where Lisp 
hasn't really penetrated past the other halftime languages-person down the hall 
from me, that it would be easier for me to train adults if order of 
mathematical operations were baked in, because that's probably what most people 
I'd be training will expect, reducing the amount of deprogramming that I would 
have to do.

"Deprogrammatic load" ;)

Another approach I think is really cool is actually just using mathematical 
notation as one representation of what's otherwise basically an s-expr, in 
which case I think one is having some cake and eating it too. I've been playing 
with Mathematica a bit, which seems to do some of that. Kind of like flipping 
between the piano roll and the notation view in a music program. I also think 
their big algorithm library is a really lovely idea... If it doesn't 
necessarily separate meaning from optimization, it at least seems like it could 
help separate math from glue and plumbing  which would just be a godsend in my 
work, where it often feels like I have to read-between-the-lines to find an 
algorithm in a piece of code I'm looking at.

Isn't Nile kind of like a "read-also" APL?

On Jun 5, 2011, at 3:51 PM, Florin Mateoc <[email protected]> wrote:

> But wasn't APL called a "write-only language", which would make it in a way a 
> polar opposite of Smalltalk?
> 
> I agree that it is not about "consequences of message sending". And, while I 
> also agree that uniformity/simplicity are also virtues, I think it is more 
> useful to explicitly state that there are "things" which are truly different. 
> Especially in an object system which models the world. Numbers would be in 
> that category, they "deserve" to be treated specially. In the same vein, I 
> think mathematical operators "deserve" special treatment, and not just from 
> an under the covers, optimization point of view.
> 
> Thank you,
> Florin
> 
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc
_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to