News for hackers. Stuff that matters.
Re:Learning APL by queuebert on Friday August 06, 2021 @04:36PM (#28092453)
Don't flame me, but I think APL is the perfect language to introduce coding to kids. I've had great success with it personally. The symbols are suprisingly intuitive to them, and APL's strengths match the domain of what kids typically do with computers at first.
Re:Learning APL by leephillips on Friday August 06, 2021 @04:41PM (#28092503)
I don’t think you’re wrong at all. I was not a kid at the time, but APL was the first language I learned. There is one drawback: it kind of spoils you. If you continue to do any programming you’ll probably have to use other (inferior) languages, and you’ll always miss APL.
Re:Learning APL by vanderZwan on Friday August 06, 2021 @05:20PM (#28092871)
> it kind of spoils you

I think in some way anyone's first language will spoil them for whatever that language is best suited for. My "first" language was Z80 assembly, because I wanted to make games for my calculator (I ended up writing just one[0], also "first" because technically my first was TI-BASIC of course). I've missed feeling like I directly was speaking "to the metal" ever since. Don't get me wrong, I'm super-happy with the high-level languages I've used since, but whenever I have to wrangle efficient code out of JavaScript there's some (probably misplaced) nostalgia for when I didn't have to worry about whether or not the JIT will kick in or not.

[0] https://www.ticalc.org/archives/files/fileinfo/328/32817.htm...

Re:Learning APL by scns on Saturday August 07, 2021 @10:19AM (#28098763)
Hm, i'll have to disagree. My first language, decades before i became a programmer, was Commodore Basic. When i started learning programming in earnest, my first languages were Java, C and Python. The first language that spoiled me was ReasonML, compiling and reloading a JavaScript frontend in milliseconds. The first real job using Typescript was like watching paint dry. Around 30 seconds of waiting for compiler, linter and the rest of tooling on each push? My colleagues disabled the linter to get work done.
Re:Learning APL by blowski on Friday August 06, 2021 @04:53PM (#28092612)
That’s why I recommend starting with GW-BASIC like I did.
Re:Learning APL by queuebert on Friday August 06, 2021 @05:12PM (#28092794)
GORILLAS.BAS represent!
Re:Learning APL by shaunxcode on Friday August 06, 2021 @06:27PM (#28093505)
Oh man memories of figuring out how to change the wind speed and feeling like a hacker for the first time!
Re:Learning APL by ZachWick on Friday August 06, 2021 @10:49PM (#28095257)
APL was originally created by Iverson as a notation used to teach mathematics and only became a programming language able to be executed by a computer around the time that (or shortly after) he published his book _A Programming Language_ [0] in 1962.

Even throwing away the “executable by a computer” part of APL and only considering it as a notation, APL can be powerful. Iverson gave a lecture, which was published as _Notation as a Tool of Thought_ [1] that contains a good discussion of what exactly makes a given notation “good”.

[0] https://web.archive.org/web/20141027152546/http://www.softwa...

[1] https://dl.acm.org/doi/pdf/10.1145/358896.358899

Re:Learning APL by vanderZwan on Friday August 06, 2021 @05:08PM (#28092761)
Well, the Snap! people seem to agree, since it's available as a library there, as I discovered just a few hours ago:

https://twitter.com/nathrune/status/1423703525612212232

That actually sounds like quite a powerful addition to Snap!

Re:Learning APL by shaunxcode on Friday August 06, 2021 @06:44PM (#28093630)
that is beautiful!
Re:Learning APL by jazzyjackson on Friday August 06, 2021 @04:52PM (#28092605)
It may also appeal to children who desire to read and write in a secret code language (seems like a phase some of us have, anyway!)
Re:Learning APL by bryanrasmussen on Friday August 06, 2021 @05:14PM (#28092821)
so maybe the first language should be brainfuck.
Re:Learning APL by cyberbanjo on Friday August 06, 2021 @05:16PM (#28092840)
i think it's lack of expressive power will turn off newbies
Re:Learning APL by vanderZwan on Saturday August 07, 2021 @03:21AM (#28096510)
I'm ironically going to be that pedantic guy and say "well ackchyhually, the point is that it's Turing complete so it lacks no expressive power, you're thinking of verbosity".

Also, yes, it totally will

Re:Learning APL by rak1507 on Friday August 06, 2021 @04:40PM (#28092502)
Interesting! Aaron Hsu agrees. https://www.youtube.com/watch?v=kIItfQJEVdM