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
