So the original Perl?
So the original Perl?
[1] https://github.com/phantomics/aprilYou can create obscure Perl as you can create obfuscated C as in any language, but if you think about the reader you can create 'easy to read' program in Perl, even by a beginner.
But creating 'not obfuscated' APL? That's really hard!
APL is a completely different paradigm.
Every now and then I get the urge to take a deep dive into APL or J but I really need a use case.
Since they are array languages they seem like they might be good for machine learning?
APL is a tool for thought more than a real programming language so in my opinion it's best suited to boost your puzzle solving ability.
(opticl:write-png-file
"~/out.png" (april-c "2 0∘{(x s)←⍺←2 0 ⋄ (⌽[x],[x]⊢)⌽[x]⍣s⊢⍵↓[x]⍨(1-2×s)×⌊2÷⍨x⊃⍴⍵}"
(opticl:read-png-file "~/in.png")))
The 2 0 at the start of the APL line above controls the mirroring behavior. The second number can be set to 0 or 1 to choose which side of the image to mirror, while the 2 sets the axis along which to mirror. This will be 1 or 2 for a raster image but this function can mirror any rank of array on any axis.April was used to teach image filtering in a programming class for middle-schoolers, you can see a summary in this video: https://vimeo.com/504928819
For more APL-driven graphics, April's repo includes an ncurses demo featuring a convolution kernel powered by ⌺, the stencil operator: https://github.com/phantomics/april/tree/master/demos/ncurse...