4 ms·
APL really is a wonderful core notation, even though the full language is rather crufty. I've long been saddened that its promises of parallelism never seemed
by Athas 7y ago
APL really is a wonderful core notation, even though the full language is rather crufty. I've long been saddened that its promises of parallelism never seemed to work out.
- smabie 7y agokdb+/q supports massive parallelism.
- lelf 7y agoModern APL incarnations (kdb, dyalog apl) are quite damn parallel.
- Athas 7y agoI've never used K, but isn't Dyalog mostly parallel through isolates? Last I checked, basic array operations were not automatically executed in parallel. Did this change?
- jharsman 7y agoDyalog launches multiple threads for certain operations if the arrays are large enough to justify the overhead.
- derefr 7y agoThat seems like the right approach for CPU-targeted code. Has an APL descendant ever been created to target a GPGPU compute-kernel, or even to compile to an FPGA netlist description of a DSP?
- lelf 7y agoYes. https://github.com/Co-dfns/Co-dfns https://github.com/Co-dfns/Co-dfns can target GPU.
- jodrellblank 7y agoAaron Hsu’s co-dfns is a compiler of a subset of APL, written in APL, which compiles to GPU code. Do a HN Algolia search for his username “arcfide” to find a lot of discussion, and there’s a couple of YouTube video talks, one of him talking through the codebase on a livestream, another a recording of a conference style tall introducing it to people. It needs Dyalog APL, but that’s now easily available for non commercial use.