« first day (626 days earlier)      last day (2036 days later) » 
00:00 - 22:0022:00 - 23:00

10:01 PM
perhaps this makes group more clear
the first 2 output lines show the characters of s paired up with their corresponding elements in levels. The next 3 lines show the operator in action: all characters that got a corresponding 0 are in the 1st line, all with ¯1 in the 2nd, and ¯2 - 3rd
 
@nathanrogers Is this really considered a golfed piece of code?
 
@arcfide non-experts usually have a hard time separating code parts and understanding the structure of code
 
@arcfide "golfed" is ambiguous
 
while I didn't understand operators, I just took their order of binding to be "random". Took me way too long to move away from that
 
I am big noob
 
10:11 PM
I'd say one of the first skills when reading APL is the capacity to parse it. :-) Being a Schemer in a previous life, I'd recommend S-expression-ifying any string of APL code first if you're familiar with that at the beginning until you can do that with 100% accuracy.
I wouldn't recommend trying to read the S-expressions, but simply being able to do it.
Drawing parse trees would also work.
After that, the slow progression through a piece of code on a whiteboard/pen and paper/REPL is useful.
I personally would be suspicious of the technique of introducing intermediate variables into the code as a means of understanding, but if it works for you, go for it.
@nath
 
@arcfide it mainly just separates code parts so taking each in would be easier
 
@nathanrogers Are you familiar with the core semantics and syntax of APL already?
@dzaima When and how did you realize that there was a consistency to the binding rules of operators?
 
@arcfide umm..... ... ... as I wrote that message
 
:D
 
ok not really, but that's when I finally thought more about it, fixing the gaps in my understandings
 
10:20 PM
I see we're in the Wild West here with no rule of Law and where Syntax flies wherever it pleases with the gusting of the winds.
This should be fun.
 
Wait, you mean APL isn't parsed by taking a random permutation of the code? :P
 
Well......
 
@arcfide we even used to do what we did with you to allow you to talk here if some low-rep user wanted to participate in a lesson
 
@arcfide also you can edit (left by the message or up arrow in the chatbox) & delete () messages here in a 2 minute window from posting
 
There is this line in my parser:
(⊂'⍵⍵' '⍺⍺','⍺⍵')∘,∘⊂¨↓⍉¯1+3 3 2 2⊤(6 4 4⌿1 5 9)+2×⍳14
 
10:22 PM
@EriktheOutgolfer I can parse APL better than I can parse that sentence :P
 
@dzaima like I already knew that operators bind left-to-right but I always thought "it can't be that simple, surely"
 
Maybe a fun game would be for people to study that line of code, guess at how it is used in the parser, and how it relates to the comment about random permutations.
@dzaima :-)
 
@arcfide what ⎕IO is that for? (not that that'll help me understand anything :p)
 
@arcfide um, that line is an array
 
Whenever I say anything or write anything, assume I'm 0 index origin.
 
10:33 PM
Well, I can trace through all of the code and understand what it does, but I really have no clue why
 
00:00 - 22:0022:00 - 23:00

« first day (626 days earlier)      last day (2036 days later) »