« first day (2360 days earlier)      last day (301 days later) » 

12:53 PM
There seems to be a consensus in the APL community that the hard part of learning to use the language efficiently is array thinking. This is probably just a case of me not knowing what I don't know, but I kind of disagree with this. Array thinking comes relatively easy if you have been exposed to numpy, which is a fairly popular "Iverson ghost". I find combinator/train/fork thinking by far more alien and harder. I have no useful intuitions about where jots / frownies / tacks / etc go.
 
1:48 PM
@Schiphol Of course, personal experience with something similar to a subject in question will help. Similarly, people with Haskell combinator experience will find tacit APL a delight, but might struggle with array thinking.
 
 
1 hour later…
2:53 PM
Announcement: BAA Vector Webinar in 3 mins. britishaplassociation.org/webinar-schedule-2023
 
@Adám tacit looks so powerful though. I'm really looking forward to grokking it.
 
@Schiphol Did you look at the tacit educational resources on APL Wiki?
 
@Adám The things linked to here: aplwiki.com/wiki/Tacit_programming? Not yet, thanks for reminding me.
 
3:46 PM
@Schiphol while map and reduce are not like be any new concept to people expose to functional programming or parallel computing, generalized matrix multiplication and rank are rarely seen outside, and even inside APL community generalized matrix multiplication is underused. i.e. for the 1D arrays most would write +/a×b not awaring a+.×b.
And I can tell that is because many people set their comfort zone to at most 2D arrays, reluctant to step out to the higher dimensions.
Say RGB image processing in numpy, it would usually be treated as three 2D arrays and an algorithm would be different to the monochrome case. A good array thinker would try to transpose the RGB image so the algorithms for monochrome can be directly applied.
It appears the numpy for loops would be converted to parallel instructions, so it may be called array programming, but this does not make it array thinking
 
@LdBeth Usually one does not use for loops in numpy. But I think I see what you're saying
 
 
2 hours later…
6:18 PM
Not exactly related, but one thing I love about array programming is how natural iteration becomes
It's not the same, but I like how Julia has the broadcasting syntax to handle this
(I think the biggest reason I don't like Julia more is the lack of pattern matching in its method dispatch thingy)
But... is Julia even considered an APL? Or is it just more array focused than average?
 
@Adám hey that's me! took me quite a while to get used to arrays as a thing you do stuff on directly
@AndréLeria I wouldn't say it's an APL, but it's definitely APL inspired
 
Fair
 
oh also why does aplcart have the really cool id matrix function and yet no easyand intuitive ∘.=⍨⍳? is the cool one somewhat more generalizable?
or that much better for performance?
 
 
4 hours later…
10:38 PM
@RubenVerg This.
 

« first day (2360 days earlier)      last day (301 days later) »