Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I would like to coin a phrase: "seduced by syntax".

I think humans LOVE syntax; and syntax is often loveable, crystallizing a new viewpoint into a linguist pattern that allows this viewpoint to be diffused by our amazing hardwired capabilities for language. J does that.

That being said, sometimes being seduced, while REALLY FUN for a little while, turns out to REALLY MESSED UP in the long run. I think J and APL are like that too -- just break up with him, really....

For another metaphorical take: I think Python and C are like English -- boring, with a lot of fun syntax stripped out, but very, very useful. C++ is like Mandarin -- completely complicated, but so much literature and history is written in it that you have to take it seriously. Shell is like the pidgin languages. And J/APL ... they are like Quileute (the language spoken by Jacob-the-Werewolf's tribe): completely difficult, arcane, counter intuitive, and only spoken by like six other weirdos (ie don't bother).

All these languages are seductive, though.

J programmers love to exchange emails like "I found a way to calculate pi to the 80th decimal with only 4 characters" ... as if that is remotely useful. We have J code in use in our office -- its fun, if you like speaking Klingon, but it is a complete waste of time and sweat for any pragmatic applications. If you want to do complex weird matrix stuff in a few lines, learn linear algebra and tensor operations for chrissake, which actually have some utility in the real world. And don't be fooled by APL/J types telling you their language is mathematical -- it isn't, in the sense that you can't actually derive new results with it; it is just difficult (good math makes thing easier).

Sorry for the rant. I wish the damn language would disappear, and we could remember it wistfully like SNOBOL, Ada, SAS, and other bad experiments in seductive syntax.



Syntax to me is superficial. What APL/J/K are doing is much deeper: programs are short sequences of composable operators.


I get your point, but syntax ceases to be superficial if it prevents you from expressing what you want to say cleanly. As a daytime Java programmer, discovering the freedom from syntax that Lisps allow you has been revelatory.


I quite agree. It was revelatory for me in the same way.


Math invented composable functions (sin(sqrt(blah)) -- extending it to operators is fun, but not really very important.

Oh -- I would respectfully hazard that syntax for you (and for me!) is no more for superficial than the blue eye shadow on the girl in my 10th grade English class, if you get my drift. ;)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: