News for hackers. Stuff that matters.
Re:Beating C with Dyalog APL by person_of_color on Thursday October 24, 2019 @08:22AM (#21343891)
Wow this is a bizarre esolang.
Re:Beating C with Dyalog APL by empath75 on Thursday October 24, 2019 @08:25AM (#21343926)
It’s not an esolang. It has a long history of actual real production use.
Re:Beating C with Dyalog APL by vmchale on Thursday October 24, 2019 @02:15PM (#21347457)
Didn't Iverson win the Turing award for ALP?
Re:Beating C with Dyalog APL by pjc50 on Thursday October 24, 2019 @10:24AM (#21344945)
Production use these days is more likely to be J, which you can actually type on a normal keyboard.
Re:Beating C with Dyalog APL by Jtsummers on Thursday October 24, 2019 @12:47PM (#21346382)
It is different to look at, but the editing modes let you type the APL characters without too much difficulty. I spent about 3 months doing a deep-dive into APL last year, it took about two weeks to become proficient typing it (already a touch typist, though). I still remember most of the character positions (the worst part for me was that I use Dvorak, so the visualized keymap is useless since most assume QWERTY layouts). I mostly used emacs, I think the default prefix character was `, but switched it to . . Typing iota: .i. Typing rho: .r.
Re:Beating C with Dyalog APL by jheriko on Thursday October 24, 2019 @09:07AM (#21344275)
that doesn't stop it being an esolang

... although the code quality of the examples makes it look a million times more like one than it needs to

Re:Beating C with Dyalog APL by coldtea on Thursday October 24, 2019 @11:18AM (#21345499)
>that doesn't stop it being an esolang

Actually it does:

"An esoteric programming language (sometimes shortened to esolang) is a programming language designed to test the boundaries of computer programming language design, as a proof of concept, as software art, as a hacking interface to another language (particularly functional programming or procedural programming languages), or as a joke"

Re:Beating C with Dyalog APL by shaunxcode on Thursday October 24, 2019 @01:51PM (#21347222)
Right, and APL could not be further from the definition given that it started as a chalkboard notation for reasoning about array operations!
Re:Beating C with Dyalog APL by coldtea on Thursday October 24, 2019 @02:27PM (#21347616)
Right, and Lisp started as a notation in a paper with no intention of building a language. But nobody would call it an esolanguage.

How something started and what it became are orthogonal...

I'm pretty sure Jack the Ripper started as a cute baby too...

Re:Beating C with Dyalog APL by lispm on Thursday October 24, 2019 @02:57PM (#21347968)
> Lisp started as a notation in a paper with no intention of building a language

what?

Re:Beating C with Dyalog APL by kragen on Thursday October 24, 2019 @04:16PM (#21348710)
Well, it has some element of truth. The S-expression notation we think of as “Lisp” originated as a contribution to recursive function theory rather than a practical programming language, even if earlier McCarthy was thinking of proceeding by adding IPL-V facilities to Fortran.
Re:Beating C with Dyalog APL by lispm on Thursday October 24, 2019 @04:39PM (#21348913)
McCarthy wanted a list processing language. He added list processing functions (which then later appeared in Lisp) to Fortran. He and his team then went on to develop and implement a new language: Lisp. The implementation ALWAYS was based on lists and s-expressions.

The paper http://www-formal.stanford.edu/jmc/recursive.html was published, when Lisp was already implemented, to present some ideas to a different audience. But Lisp already existed by then as a running programming language.

First and foremost Lisp was a real programming language implemented on a real computer.

http://www.softwarepreservation.org/projects/LISP/lisp15_fam...

See also: History of Lisp, John McCarthy, http://jmc.stanford.edu/articles/lisp/lisp.pdf

"My desire for an algebraic list processing language for artificial intelligence work on the IBM 704 computer arose in the summer of 1956..."

"The implementation of LISP began in Fall 1958 ... These included programs to read and print list structure. I can’t now remember whether the decision to use parenthesized list notation as the external form of LISP data was made then or whether it had already been used in discussing the paper differentiation program."

"The M-notation also used brackets instead of parentheses to enclose the arguments of functions in order to reserve parentheses for list-structure constants. It was intended to compile from some approximation to the M-notation, but the M-notation was never fully defined, because representing LISP functions by LISP lists became the dominant programming language when the interpreter later became available."

"Anyway, I decided to write a paper describing LISP both as a programming language and as a formalism for doing recursive function theory. The paper was Recursive functions of symbolic ex- pressions and their computation by machine, part I (McCarthy 1960)."

Re:Beating C with Dyalog APL by RodgerTheGreat on Thursday October 24, 2019 @05:44PM (#21349512)
An amusing coda to the M-notation story is that many extant examples of it closely resemble or are valid K/Q syntax.
Re:Beating C with Dyalog APL by kragen on Thursday October 24, 2019 @05:08PM (#21349179)
Right, that's exactly what I mean. Thank you for a adding all these great references to primary sources! Has CBI or somebody done an oral history interview with Slug Russell yet covering this time period? He's not dead yet. There's still time.
Re:Beating C with Dyalog APL by lispm on Thursday October 24, 2019 @05:11PM (#21349218)
Just that the s-expression notation did not originate as contribution to recursive function theory, but was actually originating from designing and implementing a programming language and system for list processing.
Re:Beating C with Dyalog APL by kragen on Thursday October 24, 2019 @05:27PM (#21349367)
I think your reading of these sources differs from mine, then, but the important thing is that now anyone who is interested can peruse them at their leisure and make up their own mind.
Re:Beating C with Dyalog APL by jarjarbinks455 on Thursday October 24, 2019 @04:16PM (#21348716)
Yes. Originally it was a thought experiment. Just like mathematicians can imagine an idea and use a notation without creating a compiler.
Re:Beating C with Dyalog APL by lispm on Thursday October 24, 2019 @04:28PM (#21348808)
Sure not. McCarthy wanted to develop a list processing system for the IBM 704 in the mid 50s. He experimented with Fortran and added list processing primitives and then went on to design and implement a new language: Lisp

McCarthy early on proposed to write a compiler - actually this was one of the very very early papers:

J. McCarthy. Memo to P. M. Morse: A Proposal for a compiler. Memo CC-56, Computation Center, Massachusetts Institute of Technology, December 13, 1957, 19 pages.

http://www.softwarepreservation.org/projects/LISP/MIT/CC-56....