4 ms·
This it the end of an era. Although most people will have never seen it, APL was a pretty influential programming language. It is the main reason that Kenneth I
by aliasEli 5y ago
This it the end of an era. Although most people will have never seen it, APL was a pretty influential programming language. It is the main reason that Kenneth Iverson received the Turing award.
It uses its own character set, which makes it possible to write very programs that performed quite complicated calculations. The down-side is that programs are generally hard to understand by outsiders (like yourself next year). All people that complain that Perl is difficult to read, should certainly try APL.
When IBM stops supporting some technology, you can be certain that it is absolutely commercially dead. RIP.
- excitom 5y agoI would agree that APL fits into the category of a "write-only" language, but it's amazingly powerful. My first project many years ago was working on the IBM 5100 "portable" computer (a 50 lb suitcase sized thing). It had a toggle switch in front that could boot it into a Basic interpreter or an APL interpreter.
- mimixco 5y agoI had one in my bedroom as a kid, complete with the enormous (100 lb?) dual 8" disk drive. My stepdad inherited it after his father passed. It was brand new and they hadn't turned it on. I had a great time with it and later become a mainframe developer at IBM!
- geocar 5y ago> When IBM stops supporting some technology, you can be certain that it is absolutely commercially dead. RIP. IBM got out of the laptop business almost 20 years ago. > The down-side is that programs are generally hard to understand by outsiders I think there are a lot of people who believe they understand Python because it kindof looks like Java. I wonder if they leave their shoes tied overnight or if they check a tutorial on YouTube every morning. > It is the main reason that Kenneth Iverson received the Turing award. Array programming is probably the most interesting piece of technology I have seen in over thirty years of programming. If you can’t read it, it’s like saying you can’t lift. No of course you can’t lift unless pull you lift. That’s how it works. The good news is it’s easier than you think.
- chipotle_coyote 5y ago> I think there are a lot of people who believe they understand Python because it kindof looks like Java. Have you actually met anyone who's asserted that Python "kind of looks like Java", let alone that its resemblance to Java makes it easier for them to understand? I've written both Java and Python, and out of all the things I could imagine saying about Python, "Boy, this is sure kind of like Java" would be very, very far down on the list.
- geocar 5y ago> > I think there are a lot of people who believe they understand Python because it kindof looks like Java. > Have you actually met anyone who's asserted that Python "kind of looks like Java" That's unfair. > let alone that its resemblance to Java makes it easier for them to understand? Yes, but maybe not in the way you're expecting. Guido himself remarked on many of their similarities back in 1997[1]; They definitely have a very similar execution model, the syntax can be directly translated almost like a cheat-sheet[2], and yeah, I think people can easily convince themselves into thinking the knowledge -- even superficial knowledge like the aesthetics of one language can help them "comprehend" the other. If you haven't observed this, I think you either haven't been programming that long or you're just trying to look at what I'm saying too narrowly in an effort to troll for a fight. And it's not just Python: Norvig even (reportedly) almost convinced himself (in this way) that Python is the same as Lisp[3], and that's just bananas! Now, if you still don't know what I'm talking about, this next thing isn't going to make any sense at all either, but I'm hopeful you can try to understand after some reflection, and if not you, someone else who reads this with an open mind: If you are using one language to understand another, you're not actually understanding that language. That has a very significant implication that turns out to make Array programming really hard for experienced programmers: Because you already know Java when you learn Python (for example) you think you're learning Python faster than you actually are. It still takes a few years to get really good at Python, but in the meantime, you can lean so heavily on your Java-think you don't even realise it. You've benchmarked the rate at which you "learn", and you just can't get APL, so you might just say something impossibly stupid like "APL is hard to understand" when Iverson won a freakin' Turing award for how understandable it was[4]! Maybe that helps you understand what I mean, but if not, maybe this[5] will. [1]: https://www.python.org/doc/essays/comparisons/ https://www.python.org/doc/essays/comparisons/ [2]: http://math-cs.gordon.edu/courses/cps122/handouts-2014/From%20Python%20to%20Java%20Lecture/A%20Comparison%20of%20the%20Syntax%20of%20Python%20and%20Java.pdf http://math-cs.gordon.edu/courses/cps122/handouts-2014/From%... [3]: http://smuglispweeny.blogspot.com/2008/02/ooh-ooh-my-turn-why-lisp.html http://smuglispweeny.blogspot.com/2008/02/ooh-ooh-my-turn-wh.... [4]: https://www.jsoftware.com/papers/tot.htm https://www.jsoftware.com/papers/tot.htm [5]: https://www.youtube.com/watch?v=6cBtqhq5P28 https://www.youtube.com/watch?v=6cBtqhq5P28
- ravel-bar-foo 5y agoAPL was special among the early languages in that it had memory management, implicit types, highly optimized support for multidimensional array operations, and composable functions. It was the language for anything mathematical. The characterset was actually a plus: it allowed the experienced user to read it as one reads math, which in turn made experimentation and algorithm optimization extremely fast. The downsides of course being the technical debt at all levels of the stack: from the files filled with code which one is wise to not touch, to the characters which date back to the days of pressing backspace on a typewriter to combine multiple symbols, to the machinations necessary to roll out interpreted code to someone else's system... Well, since the rise of Matlab (and now Numpy) there are alternatives which fill APL's niche, but I do miss the elegance of everything being an array.
- dragonwriter 5y ago> When IBM stops supporting some technology, you can be certain that it is absolutely commercially dead. IBM exited the desktop/laptop PC market in 2005. “Absolutely commercially dead” is not quite how I would describe it.
- coldacid 5y agoYeah, it's more like "when IBM stops supporting some technology, you can be certain that they can't make any more dosh off of it."
- NegativeLatency 5y agoMaybe the IBM of old but the current IBM is more of a financial engineering company that happens to have some technical divisions.
- datameta 5y agoI'm not sure that the fact that IBM is developing a next-gen server offering supports your view.