« first day (1217 days earlier)      last day (1430 days later) » 

12:47 AM
Showcase: f.g rocks.
 
 
4 hours later…
5:14 AM
@Adám Regarding the graph-related FinnAPL entries (the ones without TIO links), I have a feeling that it's OK to deprecate them in favor of more standard graph structures in CS, e.g. adjacency matrix, adjacency list, or incidence matrix.
There are multiple reasons:
1) they use the terms "connectivity matrix", "connectivity list", "connection list", "node matrix" without explaining how those structures represent a graph (by maintaining those entries, we have extra burden of explaining those structures for minimal amount of usefulness)
2) the idiom list doesn't present ways to do some interesting computation on them, e.g. degrees or distances, other than converting between each other.
Maybe we can find similar issues on some other entries; I think we can collect them and decide policies on a GitHub issue before actually working on cleaning them up.
 
 
1 hour later…
RGS
6:43 AM
@Adám Nice :D
"you can use the copy and past buttons" :) a nice tip to include would be the one on EDiting arrays and strings
@Bubbler +← 1
 
RGS
7:08 AM
@Adám in problem 7 the upc barcodes, first sentence after the table reads "notice that the left representations had odd parity" when it should read "have". Also, a couple of days ago I pointed out an issue with problem 8. Did you notice it?
 
7:59 AM
@RGS I did. Unfortunately, fixing Phase II issues is delayed by time zones + holidays.
 
RGS
@Adám ah no problem, I wasn't sure if it had been lost in the other messages. If the message was relayed then I can rest assured it will be fixed
 
 
1 hour later…
9:16 AM
@RGS Fixed and added.
 
RGS
@Adám I like how the tip you added on )ed references the tip above :D on the other hand, I had to read it 3 or 4 times before I understood what the "try it now" meant. For clarity, I suggest adding "Try it now (the tip above) on )ed to learn [...]"
 
@RGS done.
 
RGS
@Adám +← 1
 
9:47 AM
Is locating an element's position in a vector using (⍸⍷) O(1) or O(N)? If the latter, is there a better version?
 
RGS
@xpqz I would guess O(N) and say you cannot make it better in the general case, only in specific cases. e.g. finding a number in a sorted vector can be made in O(log N) (have no idea if Dyalog does it by default though)
 
@xpqz Did you try testing it to find out? Also, do you just want the first location or all of them?
 
RGS
But that's just me writing down my guesses;
 
Am fishing for a "hash table" analogue -- each element can only appear once.
 
Then why not simply ?
 
9:50 AM
@xpqz You're being too specific about "table" — try "hash array"!
 
RGS
@Adám which means "table" probably should be added to the keywords there
 
@RGS I guess, table and array can mostly be made synonyms (are they not in Portuguese?)
 
Wait, wot -- a magic I beam to hash the items of an array?
 
Yup.
@xpqz Also, if you bind () and array to a lookup primitive, the array will be hashed automatically. I should add that to APLcart.
 
RGS
@Adám it depends on the usage; in some situations table and array are the same thing, some other times they are not.
@Adám Really?? That's awesome!
 
9:54 AM
@Adám can you show an example of what you mean?
 
@xpqz docs
 
Interesting. I'll have a play with that.
Thank you.
 
RGS
10:41 AM
What is the point of the matrix iota idiom? (Which btw in 18.0 can be changed to use Ö right?)
 
@RGS I literally just asked one of my colleagues that.
 
10:55 AM
@RGS didn't always work on higher-rank arrays (compare GNU APL's incompatible extension), so the idiom is retained to keep old code fast.
 
RGS
11:09 AM
@Adám I see; is an idiom a "sequence of glyphs" that is recognized by the interpreter and handled differently as a block of code, instead of dealing with each glyph separately?
 
@RGS A sequence of tokens, but yes.
 
RGS
11:26 AM
@Adám thanks!
 
@RGS Which means you can always break idiom recognition (to measure performance differences) by inserting a .
 
RGS
@Adám is there an extensive idiom list somewhere? Also, could be interesting if APLCart tagged idioms? Also*2, a notebook on idiom performance could be interesting
 
@RGS - I'm fairly sure that there are several lists out there - besides APLCart - but the only one that I remember the name of is "FinnAPL", so you might want to feed that to the bingleduck.
 
@RGS What do you mean by "idiom" here? Dyalog has repurposed the word for things that are recognised by the interpreter. It used to mean things that are recognised by the programmer.
 
("bingleduck" → "BING/gooGLE/DUCKduckgo")
 
11:33 AM
@JeffZeitlin (Nice: "Just bingleduck it!" and "Let me bingleduck that for you.")
 
(same word class as instagoogletweetface")
 
Except that Google really doesn't belong in that one any more; GooglePLUS is gone...
 
RGS
@Adám I mean the idioms we were discussing; idioms recognized by the interpreter.
 
@JeffZeitlin While you're referring to "recognised by the programmer"-idioms rather than "recognised by the interpreter"-idioms, there's really no reason to look further than APLcart, as I've searched high and low for all the ancient idiom lists (APL2's, Jim Brown's, FinnAPL's, Yale's from APL79), and I even translated JSoftware's Phrase Book.
 
11:51 AM
@Adám - I pretty much figured, and I do know that you update when someone makes a suggestion. I thought, though, that RGS might have been looking for sources other than APLCart for whatever reason.
 
RGS
@Adám I knew about the "fast" on APL Cart but I didn't know those corresponded to idioms, I thought they were just the faster alternatives to some tasks
 
@RGS Should I add "dyalogidioms" as synonym of "fast:"?
 
RGS
@Adám maybe. I checked the list you sent in the docs, I was under the impression 1⊥ was also the fast way to sum an array, or did I misunderstand? Now I can't even find it in APL Cart
 
12:07 PM
@RGS 1⊥ is fast because it doesn't have a unconstrained spec. It isn't an idiom in the Dyalog sense of the word, so (0.5+0.5)⊥ is just as fast.
 
RGS
12:40 PM
@Adám the second sentence makes sense but I don't understand the first. What does it mean for 1⊥ to not have a unconstrained spec?
 
@RGS +/ and +⌿ promise to add in order from left to right. 1⊥ makes no such promises.
 
RGS
12:55 PM
@Adám wasn't it from right to left..? */ 3 2 3 evaluates to the same as 3*2*3 which is different from (3*2)*3
 
@RGS +/ not */
 
RGS
@Adám oh! So +/ specifically goes from left to right! I thought this was general to f/
And because + is commutative I couldn't tell the difference, so I went testing with *
 
1:12 PM
@RGS It is general, but nothing is commutative when it comes to floats, and for historical reasons +/ was ill-defined like this. Compare:
1E16-+/1E16,10⍴¯1
1E16-{⍺+⍵}/1E16,10⍴¯1
 
1:27 PM
@RGS @H.PWiz The Phase II pdf is now linked from the How to Participate page.
 
RGS
2:15 PM
@Adám alright, so comparing those two, f/ usually evaluates r-to-l except for +/. Did I finally get it?
 
@RGS Correct. Ditto for +⌿
 
3:00 PM
You're invited to a half-hour's informal APL meet-up on Zoom right now. Meeting ID: 581 547 1186 Password: the result of +/3 6 5 1
 
Sorry, I have a clash with work-work :(
 
No prob.
 
 
2 hours later…
RGS
4:34 PM
@Adám thanks
@Adám how did it go?
 
@RGS Very quiet (nobody came). I had a meeting up until the minute before, so I didn't have time to make an announcement in advance. Only those looking into the room during the half-hour would have had a chance.
I'll ask at the next Cultivation if there's interest.
 
 
1 hour later…
RGS
6:02 PM
@Adám oh, sorry then :/ asking beforehand sounds reasonable :)
 
Nothing bad happened. I just kept on working.
 
RGS
Very well; next time it'll be more crowded, I'm sure
 
Too late ... lunch break
 

« first day (1217 days earlier)      last day (1430 days later) »