An attempt at a branchless, array style, FizzBuzz: https://tio.run/##SyzI0U2pTMzJT///PzUv5VHbBEMDA66c/Pzs0gIg51HvZqAoV0piSSKQBxHWUXfLrKpSV1B3KgVTIB6YyZWZl1yUmpuaV1IMVKzxqGvx4ekaQBM0HvV0Hd7@qHeFpqYmF9TsaGMFhGoFoJ2xQC1Aq7QNubjSMstSQSaYoimBaQXLg9RraKCKdC4BmqAJtBRkkJGmpjaaAluwhKEmTIkxyD2PeucBjQL5MBqiOPb/fwA

APL is a functional language with some really weird syntax, and it's got the whole nested array thing going on

I know a collection of miscellaneous things about it that I've heard or read over time and that may or may not be true. For instance, I'm pretty sure it evaluates right to left (so there seems to be some polish notation happening)

@Adám we're currently discussing methods of training our new APL apprentice. We have a lot of internal material including an Optima printed training course. It is basic and very out of date. We've built things up over the years but nothing really compares to the professional APL course delivered by Bernard Legrand himself. Are Dyalog looking to revive this, or are the Jupyter Notebooks a direct replacement?

@osuka_ You don't need to. (Dyalog) APL is truly multi-paradigm. You can go all OOP or fully functional. I'd start with understanding the basic syntax of APL.

@JamesHeslip We are looking to (kind-of) revive it. We recorded his last course, and are considering organised courses where participants watch the videos and have a live teacher accessible online to answer questions. They attendees would also be able to meet virtually to discuss matters.

I don't think a single resource will cut it either. People have different backgrounds. That's why the wiki distinguishes between:

Oh, btw, Richard Park and I have found a pretty good formula for getting people, who have never seen APL before, enough knowledge to continue on their own with expanding their vocabulary and skills. It takes about 3 hours and the only pre-requisite is some mathematical knowledge. We've given this course three times at local schools, and I've given it to a handful of people here in the chat room too.

@Adám over time we've built up a Confluence library of knowledge transfer. Session plans ranging from an introduction to the IDE to a bunch of projects used to test knowledge. It's lacking in areas, but there's a structure to it.

Not sure how that would work currently as it's an internal knowledge base. We've structured it in the form of "things to deliver" when taking a session with a new starter. This could be fleshed out to be more verbose with screenshots, etc. Right now that is one of the session plans that could do with a bit of work.

Hi, @Adám! Saw a reference to the chat in the comments to one of your APL solutions in CodeGolf, so I stuck my head in. I'm a non-APL programmer who has had some exposure to APL, but TradAPL rather than the current model where you can the kind of anonymous closures that you often post. You were the one that got one of my APL solutions in CodeGolf to work on TIO. :)

Heehee! I just wish I had the time. There are only 24 hours in a day, after all... I do have [an older version of] the free Dyalog installed on one of my own PCs at home, and also NARS2000, and also a DOSBox with about a half-dozen TradAPLs installed.

I always though that APL was an interesting language, if a bit cryptic...

I was actually looking at using APL as a DSL for building assists for a (tabletop) RPG I edit a magazine for; the problem is that getting potential users who are not programmers to download and install APL terps is ... somewhat difficult.

@JeffZeitlin I think (but you should double-check) that it is fine if you're not making money off it. But yeah, UX is still an issue. Still, I think you could bundle the Dyalog executable or so/dyalib with your workspace.

@Adám You can evaluate a single line of APL by typing it into chat prefixed by ⍞←. Use ⎕← instead for boxed display and multi-line results and use ⋄ instead to silence the first statement. Use ] to call user commands, including ]help ⍣ for help on a glyph etc. Do not use markdown, but fixed-width (4 initial spaces) is fine. Commands: )lb for language bar, )docs for full documentation, )ref for PDF reference card, )idioms for idiom list.

Just out of curiosity... Does Dyalog have a US office that does business in USD? If I decide to buy one of the licenses or support agreements, I'm going to get a hassle from my bank and hit big time with currency conversion fees if I have to do it in Sterling.