« first day (1337 days earlier)      last day (1304 days later) » 

9:16 AM
hellow my fellow apples
 
(○.○)
CMC : Draw an apple using APL characters.
 
⋄{'#'↑⍨-⍵}¨⍳4
 
Huh, bot?
 
so I have this
I want to apply the (⊢⍪¯1↓1↓⌽) function repeatedly on its own result
actually, remove the ⊢⍪
I just need the result of (¯1↓1↓⌽) applied ⍵ times on itself
 
⍣?
 
9:28 AM
@Razetime Sounds like a job for
 
hmm ok
wacky pattern
I tried fixing it, but no output here: tio.run/##SyzI0U2pTMzJT///v1rj0HrDR22TQfhRz17NR72LH/…
 
9:45 AM
ok so how do I get intermediate results from ⍣?
 
I think you can just stick a ⎕← in there {((⎕←¯1↓1↓⌽)⍣⍵-3)↑{'#'↑⍨-⍵}¨⍳⍵}. Of course that doesn't "save" your intermediate results
 
If I come up with a handle that uses APL characters, is that my APLation?
 
10:05 AM
@Razetime Not easily
 
10:22 AM
oh my gawd
@RikedyP that prints the train
 
@Razetime Explicitly recurse with a dfn in that case, IMO
@Razetime yeah sorry didn't look very closely
 
maybe recursion will work
 
11:00 AM
If getting the intermediate results isn't too expensive, can you do something like {f⍣⍵}¨⍳5?
 
11:25 AM
@Razetime If you're golfing, then maybe switch to dzaima/APL, as it has which is like but with intermediaries.
 
11:54 AM
There's a golfing tip for that
 
12:25 PM
So, weird question... I accidentally left Match Whole Word on when doing a RegEx workspace search (something along the lines of .*SRF). I was hoping to get results ending "SRF". The workspace just hangs in 16.0/17.0/17.1, but seems functional in 18.0 pre-release. What changed, was it just seriously optimized? And what is the expected behavior of combining these two? (I imagine a single word ending SRF?)
 
@JamesHeslip with a non-functional vs fast i'd expect what changed is the algorithm (i.e. O(n^whatever) → O(n) or similar) and that's not that rare with regex impls
 
1:10 PM
@JamesHeslip We fall back to non-regex when regex isn't actually needed, so 18.0 may do that in more cases than 17.1, especially since that code may have been looked at when ⍠'Regex' was added in 18.0.
 
 
1 hour later…
2:27 PM
Ah! I might have found the/an interaction which is breaking the alternate keyboard IME after sleep/resume cycles. I closed Remote Desktop, and Alt Gr + letter started working again. RDP client is always open long-term so that could be it.
 
RGS
I have an 18Mb CSV file
shouldn't I be able to read it into APL with ⎕CSV? It gives me a WS FULL
 
@RGS What is MAXWS?
 
RGS
      ⎕WA
266757632
Don't know how to check the maxws var
 
@RGS ]config maxws
 
RGS
256MB as per the options
and your command confirms it
 
2:37 PM
tbf, each cell becomes a 64-bit pointer plus header etc.
You can ask ⎕CSV to fetch data piecemeal.
 
RGS
@Adám that's unreasonable for my purposes
I just want to read in a really large matrix :P
What would your suggestion be?
with the 256MB the ⎕nget quad function can read my larger CSV @ 107MB
And all the numbers in the CSV are below 2*8
 
@RGS Is the CSV all-numeric?
(I've got to pick up a child from school ― will be back in about 30 mins.)
 
RGS
@Adám has a non-numeric (irrelevant) header
is that confusing ⎕CSV?
 
RGS
3:06 PM
the file has 785 columns and I tried using c ← ⎕csv 'filename' 'UTF-8' (785⍴2) to force ⎕csv into reading numbers instead of characters but I still get a WS FULL error. I'm working with the larger file now, 107MB
the smaller already works with the above without having to increase WS size
 
3:23 PM
@RGS Use 1 for the header row indicator (4th element of the argument).
 
RGS
@Adám (already removed the header)
 
@RGS OK, and now, does it work?
 
RGS
@Adám it works in that it reads the smaller csv
it gives a WS FULL for the larger csv
even with a clean ws
 
How many rows?
 
RGS
and tbh that bothers me a bit bc the csv is 107MB and the ws size 256MB
60k rows
the final array should be 60000 785 in shape
with integers in the range 0 255 inclusive
 
3:26 PM
That should only be 94 MB.
Indeed:
      m←?60000 785⍴255 ⋄ ⎕SIZE 'm'
94200040
@RGS I suggest you send an email to richard with the file attached and explain briefly what you are experiencing. You can CC me.
 
RGS
@Adám what richard? the non-park?
 
Yes, "richard" (Smith), hence my lowercase.
 
RGS
hm ok
btw reading the contents of the file with ⎕nget gives
      c ← ⊃⎕nget 'filename.csv' 1 ⋄ ⎕SIZE 'c'
112125744
but this I can :/ I am holding the whole file as a matrix in memory
 
You should even be able to do ⍎¨⊃⎕NGET 'filename.csv' 1 then.
 
RGS
3:42 PM
@Adám I am, it just takes an awful lot of time and the interpreter freezes for some time
 
@RGS Maybe (2⊃⎕VFI)¨ is faster.
 
RGS
4:07 PM
what is a domain error in matrix multiplication?
I am asking because my matrices have matching shapes and they hold numbers
so I am left wondering what a "domain error" could possibly mean...
 
4:27 PM
@RGS What is ⎕DR of the two matrices?
 
RGS
1287
I think the numbers are exploding; that could be the issue, no?
exploding = getting TOO big
 
Right.
@RGS Coming?
 
RGS
yup, fetching my earphones
 
book talk?
 
Well, internship in general.
 
4:36 PM
oh, never knew that was there.
 
5:08 PM
@Razetime RGS is interning at Dyalog, and I'm his supervisor, so we meet once a week to check in.
 
 
4 hours later…
9:08 PM
Trying to make a basic filter function, never made an operator before, how come {(⍵⍵ ⍵)/⍵} doesn't work?
Got it, my bad
Oh never mind, how come you can't just have ⍵⍵ and ⍵?
 
@rak1507 that's just the rules - a monadic operator will always take the operand on the left, and a dyadic one requires both (and which of the two it is is decided by the presence of ⍵⍵). (similar to how you can't do 6{⍺} for a "monadic" function)
 
right ok
 
9:34 PM
like +/ is plus-reduce instead of /+
where / is the operator and takes + on the left
 

« first day (1337 days earlier)      last day (1304 days later) »