[HN Gopher] IBM APL2: Software withdrawal and support discontinu...
       ___________________________________________________________________
        
       IBM APL2: Software withdrawal and support discontinuance
        
       Author : tosh
       Score  : 55 points
       Date   : 2021-06-15 14:49 UTC (8 hours ago)
        
 (HTM) web link (www-01.ibm.com)
 (TXT) w3m dump (www-01.ibm.com)
        
       | mlochbaum wrote:
       | This might not mean what you'd expect at a glance. The agreement
       | here seems to be that IBM has sold all relevant IP for APL2[0] to
       | Log-On Software[1], which will now be offering essentially the
       | same product and some level of support.
       | 
       | For some time now APL2 has only barely been under active
       | development, so it's not clear whether this will lead to more or
       | less effort to develop the product. First released in 1984, APL2
       | is now far from the leading edge of APL development. For example,
       | APLs began adding control structures to free programmers from
       | using Branch (Goto) for control flow in the mid-1990s (late, I
       | know!). APL2 still doesn't have them. Dyalog (my former employer)
       | is pretty clearly the front-runner for commercial APL at this
       | point; APL+Win also sees some level of development and NARS2000
       | and April are some non-commercial efforts to check out.
       | 
       | [0] https://aplwiki.com/wiki/APL2
       | 
       | [1] https://log-on.com/2021/01/26/log-on-software-announces-
       | log-...
        
         | mlyle wrote:
         | Eh, this is the typical way that IBM leaves markets. Yes, you
         | can still buy OS/2 from eComStation, but the end of
         | organizational support and selling what remains to a small
         | entity is how IBM avoids having to deal with it anymore.
        
           | mlochbaum wrote:
           | Good to know. I'm definitely not denying that this is IBM
           | washing its hands of APL officially, just pointing out that
           | unofficially it's been this way for a decade or two at least.
           | Despite hosting the creation of APL, IBM has a distinguished
           | history of neglecting it. In the early years there was some
           | pressure to use PL/I instead of APL. For timesharing (when it
           | was profitable, before microcomputers), APL*PLUS and SHARP
           | APL took over a lot of market share from IBM by being faster
           | to implement features customers wanted. APL2 was a reversal
           | of this trend, but it didn't last long.
        
           | pulse7 wrote:
           | The same happened to VisualAge for Smalltalk where in 2005
           | Instantiations, Inc. took over "worldwide rights for this
           | product" - and is still offering it...
        
             | kencausey wrote:
             | I kind of wish that VisualAge for Java was still a thing
             | but in reality it is unlikely that I would do anything more
             | with it than I ever did with v1.0 and v2.0 which still sit
             | on a shelf.
        
         | robomartin wrote:
         | IBM should have taken an altruistic path on APL2. They have
         | made tons of money with APL over the years. They should have
         | released it as FOSS. As someone who started with APL in the
         | early 80's, APL2 showed a lot of promise at the time.
         | 
         | The APL ecosystem is dead enough that having a company like IBM
         | go FOSS with the language could --not likely, but it could--
         | spike interest and perhaps lead to the development of "APL3" or
         | whatever the next evolutionary step of the language might be
         | named.
         | 
         | From my perspective core APL is now a few decades behind the
         | times. A non-trivial effort would be required to bring it into
         | what it could become. And this could only be done through FOSS
         | and people willing to invest time and smarts into driving this
         | evolutionary step.
        
           | neilv wrote:
           | A curious question (from a long-time open source
           | contributor)...
           | 
           | From the perspective of IBM's customers of APL2 (not from the
           | perspective of some other group of humanity), would it best
           | suit their interests to have APL2 spun off to a company, _or_
           | for APL2 to be released as FOSS?
           | 
           | I'm wondering whether, whatever the needs of those APL2
           | customers, perhaps the company would be more likely to
           | satisfy those needs, compared to waiting for whatever emerges
           | from FOSS?
           | 
           | (Of course, with FOSS, multiple companies could emerge, and
           | also be motivated to compete. But they'd be competing with
           | each other, and with free FOSS undercutting them, for
           | possibly a small pool of customers that might not grow much.
           | And I don't know whether it'd be viable to invest in that
           | slice of customers, or to even be in that business at all?)
        
             | mumblemumble wrote:
             | From my perspective as someone who's seen this happen
             | before:
             | 
             | "Released as FOSS" means "We have withdrawn life support
             | and it will now die a slow lingering death. Have fun with
             | that." Unless you can spare the resources to maintain it
             | yourself, this marks the point when it's officially time to
             | migrate away immediately.
             | 
             | "Spun off to a small company" means "Someone has now been
             | _personally_ incentivized to take care of it. " It's
             | certainly not guaranteed to survive long-term, but it's at
             | least been given a chance at revitalization. It's probably
             | worth sticking around for a while to see what happens.
        
             | kevincox wrote:
             | FOSS is almost certainly better all else being equal. But
             | what IBM's customers probably care far more about is the
             | availability of support.
        
           | slver wrote:
           | I know the cultural understanding among developers is that
           | FOSS is "altruistic", but that's often wrong.
           | 
           | It's all about incentives. If there's no incentive behind an
           | OSS community working on this project, it'll just burn out a
           | few naive souls, and kill off the project for the rest.
           | 
           | Giving the project to a company which has commercial interest
           | in maintaining it and supporting it through commercial
           | licensing could mean a better future for APL2.
           | 
           | This aftermath is very typical when a project is
           | "interesting" from commercial perspective, but it's quite
           | "boring" from technical/enthusiast perspective.
           | 
           | I'm not saying it's ALWAYS one way or another. But it depends
           | on the APL2 audience.
           | 
           | We gotta start seeing FOSS as a tool, not as charity or as
           | some sort of "giving to the world". We're engineers, or at
           | least we should think as engineers. Engineers know no
           | solution is just "best" at everything. Everything has pros
           | and cons, and you need to consider things in context. That
           | also applies to IP management with regards to what's best for
           | a project's continued existence.
        
       | aliasEli wrote:
       | 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.
        
         | ravel-bar-foo wrote:
         | APL 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 wrote:
         | > 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 wrote:
           | Yeah, 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."
        
         | geocar wrote:
         | > 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 wrote:
           | > 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 wrote:
             | > > 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/
             | 
             | [2]: http://math-
             | cs.gordon.edu/courses/cps122/handouts-2014/From%...
             | 
             | [3]: http://smuglispweeny.blogspot.com/2008/02/ooh-ooh-my-
             | turn-wh....
             | 
             | [4]: https://www.jsoftware.com/papers/tot.htm
             | 
             | [5]: https://www.youtube.com/watch?v=6cBtqhq5P28
        
         | excitom wrote:
         | I 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 wrote:
           | I 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!
        
         | NegativeLatency wrote:
         | Maybe the IBM of old but the current IBM is more of a financial
         | engineering company that happens to have some technical
         | divisions.
        
       ___________________________________________________________________
       (page generated 2021-06-15 23:01 UTC)