Live data from Hacker News

APL deserves its renaissance too

wordsandbuttons.online

61–70 of 123 posts

Re: APL deserves its renaissance too

#61
post #6

I've felt that high-DPI touchscreens are the opportunity for an APL renaissance, if there's ever going to be one. Once hardware keyboards standardized around ASCII in the '70s, it cramped the promise of APL's custom notation. On touchscreen it's trivial to render a software keyboard that contains the entire symbol set (perhaps even adapted to the user's experience level to make it less scary initially?). Increased re…

What's the intersecting region in the Venn diagram between "people who will program in APL" and "people who will program on a touchscreen" though? They're small circles to begin with— most programmers seem to have an allergic reaction to coding on tablets and APL is kind of a hard sell even notwithstanding the input issue— and so I can't imagine the overlap is many people at all.

A language like APL would make it much more attractive to program on tablets or even phones, though.

Re: APL deserves its renaissance too

#63
post #56

No, it does not. I used APL professioally for about ten years back in the 80's. I love the language. It is incredibly powerful. Once you internalize it's like playing the piano, you don't think about the mechanics you play music. However, the language did not stand the test of time for far more important issues than the inconvenience of the character set and the keyboard. And, no, J is not a successor to APL, even th…

> Finding qualified programmers and having access to libraries so you don't reinvent the wheel. Lots of niche languages have the same problem, notably lisp, but it doesn't do to say they aren't popular for those reasons. It's circular reasoning. Languages get those things by being popular. They get popular by having those things. Every current "popular" language with good libraries and a large userbase started with n…

> No one teaches these languages. How popular could they get if companies and universities spent millions of hours collectively drilling even the most marginal programmer on how to use them like they do for C++ and Java?

Schools and universities have been teaching Pascal/Lisp/Caml/Scheme for decades, yet (almost) nobody used those languages to produce actual software, neither as a job nor for free software side projects; and a majority of jobs implied the use of a member of the large C family (or VB at the time).

Re: APL deserves its renaissance too

#64
post #39

noob question: how do I paste those symbols in say Notepad++?

I'm more worried about how to type them with a standard QWERTY keyboard.

Well I can't say for Windows but in Linux APL is one of the keyboard layouts standard in basically any install. In KDE you can just go in and enable it, in gnome/xfce/cinnamon you have to tell the system to actually show you all the layouts

  gsettings set org.gnome.libgnomekbd.desktop load-extra-items true
in a terminal will make it show up, then you just set it to toggle with some button.

https://www.dyalog.com/apl-font-keyboard.htm

Re: APL deserves its renaissance too

#65
post #33

Earlier quoted context omitted.

Wow, actually I do remember that, and it sucked! So, I've never written apl, and I'm glad I read this comment because that's an excellent point you raise. To expand a bit, I was thinking about being able to notate computation graphically. That's really what I want. Visual programming has existed and has sucked forever, but those thoughts don't go away that there might be a way to do it, if I just had the missing piec…

To be fair, ownning an iPad Pro, I can say first hand that the handwriting recognition possible with the stylus is actually quite remarkable and a great improvement from the old palm-pilot days.

With that new interface, could you see yourself jotting down a "sentence" of APL that maybe you think of in a meeting or something?

I mainly am interested in apl as a notation, there's a certain lispy zen to a language that unifies notation and code into the same thing.

Maybe there are better handwriting notations to explore for what I'm thinking.

Re: APL deserves its renaissance too

#66

Neat little tribute article. APL will not be reborn. If that was going to happen, this century's embrace of analytics and linear-algebra-rich machine learning would have propelled the upswell. It didn't and it won't. Why? It's not the symbols. Not the keyboard. Nor the learning curve. Nor the lack of standardization, libraries, or GPU support. These are collateral damage, not primary drivers. APL will not flourish be…

If you think about it, a decent stack is composed of languages. That's currently already often true, e.g. the use of IDL languages like protobuf/flatbuffers. Some languages offer integrated idl like Kotlin (data classes). Another example is html, where the UI is described using a dsl to specify elements and CSS for layout & appearance. This fact caused me to think: should stack also not be made of other languages? Is…

The language Racket (https://racket-lang.org) sort of approaches this. It allows you to quickly switch which compiler a given source file is actually sent into, the goal being that you solve each problem with sub-languages particularly suited to the task at hand. For instance, the webserver language has HTML build in as a primitive.

Re: APL deserves its renaissance too

#67

Neat little tribute article. APL will not be reborn. If that was going to happen, this century's embrace of analytics and linear-algebra-rich machine learning would have propelled the upswell. It didn't and it won't. Why? It's not the symbols. Not the keyboard. Nor the learning curve. Nor the lack of standardization, libraries, or GPU support. These are collateral damage, not primary drivers. APL will not flourish be…

APL has flourished, as a DSL embedded in a language with excellent I/O. It's just got weird syntax and is called Numpy. Or Tensorflow. Or PyTorch...

Re: APL deserves its renaissance too

#68

Neat little tribute article. APL will not be reborn. If that was going to happen, this century's embrace of analytics and linear-algebra-rich machine learning would have propelled the upswell. It didn't and it won't. Why? It's not the symbols. Not the keyboard. Nor the learning curve. Nor the lack of standardization, libraries, or GPU support. These are collateral damage, not primary drivers. APL will not flourish be…

If you think about it, a decent stack is composed of languages. That's currently already often true, e.g. the use of IDL languages like protobuf/flatbuffers. Some languages offer integrated idl like Kotlin (data classes). Another example is html, where the UI is described using a dsl to specify elements and CSS for layout & appearance. This fact caused me to think: should stack also not be made of other languages? Is…

C# kinda does have a data querying language built right in with LINQ query expressions, although they seem to have rather fallen out of favor.

Re: APL deserves its renaissance too

#69

I'd love for it to go more mainstream with a high performance open source implementation. Dyalog is pretty good, and I like J, but feel the missing symbol leaves something out. K/Q with kdb+ is too expensive, and the other open source array language implementations (Qnial, Klong, Kona, GNUAPL)are just not there.

Kx could be much bigger if they open sourced the q interpreter, tapped into a larger developer pool who could write libraries and add ons. There's more money in selling consulting services than licenses...

Re: APL deserves its renaissance too

#70
post #36

Neat little tribute article. APL will not be reborn. If that was going to happen, this century's embrace of analytics and linear-algebra-rich machine learning would have propelled the upswell. It didn't and it won't. Why? It's not the symbols. Not the keyboard. Nor the learning curve. Nor the lack of standardization, libraries, or GPU support. These are collateral damage, not primary drivers. APL will not flourish be…

Morgan Stanley used APL successfully in their bond trading business for many years... its by no means an insurmountable hurdle. Last I heard they were using Java tho’, lol. From one end of the verbosity spectrum to the other!

[deleted]
Post reply on HN