« first day (1768 days earlier)      last day (52 days later) » 

1:30 PM
@dzaima How do I split on spaces in dzaima/APL?
@Adám ' '(1↓¨=⊂,) or something
Any chance for ?
@Adám i don't like it merging consecutive separators
..and its weird ascending thing that it does
6 hours later…
7:33 PM
I have an expression to extract from a matrix a submatrix containing all rows for which column 4 value equals a given value: {(matrix[;4]=⍵)⌿matrix}. I can pass a vector to this expression and it produces a vector of matrices, which is what I want: {(matrix[;4]=⍵)⌿matrix}¨ 1 2. Now I'd like to replace the matrix reference by a left parameter ⍺. But matrix {(⍺[;4]=⍵)⌿⍺}¨ 1 2 produces a rank error. What is wrong here?
@RudiAngela the ¨ will apply to the left argument too
so you want do the left arg
@Adám he's 24 now, but started looking at APL a few years ago. He was a Phase 1 winner this year (dyalog.com/student-competition.htm) and also wrote a significant portion of aplwiki.com/wiki/Stencil . I can only look on with pride :-) Anyway, we both enjoyed watching various APL videos, from the classic 1975 Demonstration video, through various Dyalog videos, to the more recent Code Report ones too.
7:48 PM
@RudiAngela Either what dzaima wrote or alternatively insert on the left of {
@qmacro Oh nice.
@dzaima Thanks. But where do I place that ⊂?
@RudiAngela (⊂matrix) {(⍺[;4]=⍵)⌿⍺}¨ 1 2
@Adám Thanks. It works, magically (i.e. I don't know what I'm doing here).
@RudiAngela You're binding the matrix to the dyadic dfn to form a single monadic derived function, which you are then applying to each of the numbers.
@Adám My previous reaction was to your jot suggestion.
@Adám Ah yes of course: need to place in parens.
8:02 PM
@RudiAngela Yes, I could see that because you used the reply functionality (thanks!) and my explanation is indeed for that.
@Adám OIC. Makes sense.
1 hour later…
9:09 PM
@qmacro I wish I had known about APL when I was 24 ! The closest to APL that I knew was Mathematica. But, I believe that APL is much much better. I'd be proud of my son too if he was making steps helping a nice & important community as APL's :) I hope he keeps it up.
imho APL should be taught to every math & physics department around the globe along with some language like Fortran or C/C++ and Mathematica (for symbolic computations, such as symbolic integral evaluations).
It'd be nice if in the future a symbolic math library like sympy would be created for APL.
@user82382 Hi Guys Math! If you want to participate here, simply email access@apl.chat
@klao Hi there. Interested in APL?
@Adám I saw that there's a Springer book out there about creating an APL compiler. I think Haskell has an interpreter and a compiler. Does Dyalog have any plans into creating a compiler for its APL too ? :)
@milia Well, we have an experimental built-in compiler and are sponsoring Co-dfns.
@Adám thanks, I'll surely check it out :)
@Adám this is gold material: bonfire.com/store/arcfide :D
9:29 PM
christmas is soon.... wonder if santa could get me something :P
@milia I can't testify about all the products there, but I can assure you that the first three items are greater than average.
@Adám as I just mentioned right now to Aaron, I'll surely honor his shop, as I find the idea of going around with some APL code on my chest a great conversation starter :)
and hey, if it's of top quality, as it looks like it, it's a win-win
@milia I hope you got my joke.
Dyalog should sell merch with the hexagon icon, and the ⊃∨∧⌊○⊂ logo etc.
oh right
the joke must be related to the code of the first three...
I got this at least :O
@Adám yep, having a Dyalog sweater with some nice APL code on it would be nice too
Maybe a shirt that says ⊣⌿ on the front and ⊢⌿ on the back. That'd be cool.
9:40 PM
@Adám Wait a minute, how is Co-dfns only 17 lines long?
I think it is only the core code.
easy, it isn't :P ^
damn, I think Aaron's sweaters are like a test of being accepted in the community. Like in special forces. You have to go through hell -they say- to get your green beret. I guess I'll go study more APL so that I understand the fnc on the sweater. Or else I wouldn't call me worthy of wearing it xd
thankfully xpqz.github.io/learnapl/intro.html is online again :)
Clothing claiming that 42=6×3+4 – how's that for a conversation starter?
9:46 PM
@Adám hahahaha
Or that 1 = 6÷2×(1+2), given that memes about its ambiguity have been going around Reddit
I wonder what percentage of people with co-dfns tshirts can claim to fully understand it, probably not many
@rues no, it is 6÷2(1+2) that has the ambiguity
which is obviously 3 2
Is there a tacit way to express {}⍬

Computing an expression when needed.
Only using execute.
9:48 PM
Gotcha, thanks
Was just curious :)
No, wait, that's not necessarily right.
You might well be able to.
9:49 PM
You'll need execute if you need to access global names at runtime, but not otherwise.
@rak1507 Oh yeah, forgot that was valid APL
Stranding is weird
Heh, 3 2 ≡ 6÷2(1+2) would be nice.
too weird to be interesting to normal people but too obvious to be interesting to aplers
Or something like
I'm surprised 2(1+2) doesn't do multiplication, considering APL was originally used as a blackboard/paper math notation. I think the multiplication being implicit is why most people get confused with 6÷2(1+2)
9:54 PM
¯1 ≡ det (2 2 ⍴ 0 1 1 0)
@FawnLocke No no, Iverson wanted to make an unambiguous and explicit notation.
@milia But det isn't really APL.
@rues would work better with the galaxy brain format
9:55 PM
@Adám Was the stranding designed by Iverson himself or added later?
@rues Goes into the Memes section of APL Wiki?
@rak1507 True, true
@Adám Yeah, of course. Just an obvious example where iverson didn't follow mathematic tradition.
@rues Iverson was opposed to stranding!
@Adám There's a memes section? Nice
9:55 PM
I think Iverson wanted (1, 2, 3) notation originally
1=-*○⊕1 is nice, but not yet implemented :-(
@FawnLocke Not just wanted; had.
@Adám Oh, was it John Scholes then? I think someone linked to something about him implementing it
Which implementation?
Or, was it before an impl
@rues No, John Scholes was much after that. I don't remember who it was, but it was only of the first implementers. It came up in a recent APL Campfire.
@FawnLocke The very first. Didn't have a name yet, I think, or maybe it wwas PAT or IVSYS/7090.
APL Wiki seems to be more dedicated to humor than information sometimes :P
9:58 PM
@rues Humour is important, and the early APL giants had plenty of it.
Is Alpha and Omega on the humour page?
@FawnLocke No, but feel free to add them if you think it fitting. Though, I don't think it was ever humorous meant. Originally, the symbols, together with their overlined siblings, were dyadic functions.
it's unintentional humour
Why is it even funny?
10:04 PM
Jan 24 at 22:42, by dzaima
for those not in the CGCC discord, here's an art piece
Out of context it can look like APL is a religion :)
@dzaima I wonder why Judaism isn't listed first there…
@Adám well, what if det is simply a short name for some complicated APL dfn? :)
@FawnLocke some have said that it is. I think Dijkstra in one of his emails.
@milia That'd work in any language.
@Adám You edited that page, didn’t you?
10:08 PM
@Adám APL is the only language that has a rho symbol though afaik :)
@milia jsoftware.com/papers/Dijkstra_Letter.htm I think this is the source
@FawnLocke exactly.
Quite a funny interaction :)
Jsoftware has tons of interesting material to read.
@milia Sure, but why not -1 == det([[0,1],[1,0]]) and say it is JavaScript or Python or somesuch?
10:09 PM
I found also the book of Roger on the interpreter of J in C pretty interesting find. I have yet to finish reading it, and then digesting it.
@Adám because my proposal is classy, whereas yours -sorry to say- makes my eyes bleed...
@FawnLocke Hm, that should be added to apl.wiki/Edsger_W._Dijkstra
@milia For a two-row matrix, it is simply -/×⌿0 1⌽m
> Dijkstra didn't hate APL specifically: he hated every language other than ALGOL 60
@Adám It's in the external links section, saved me an edit :)
@FawnLocke Yup, I just notices, but why isn't it more front and centre?
I was also thinking that
10:16 PM
:59728046 They are about the same, but hilarious that the original uses ⎕IO←0 for footnotes, while Vector's uses ⎕IO←1
@FawnLocke The Wiki is a free-for-all, go! Edit away!
@Adám taking notes !
@rues lol!
I can't tell if it's a joke or not
@rues What?
> Dijkstra laments the inability of APL programmers to live without an APL session

I find this funny, as it's an often seen criticism on hackernews :)
10:20 PM
@FawnLocke Even stated in the latest Array Cast.
@Adám He couldn't have hated every single language other than ALGOL, could he?
Why not?
It even mentions him saying something positive about LISP later
@Adám Because there were so many languages around, even in the 60s
Surely a few others interested him, or at least weren't bad enough by his standards that he didn't hate them
I wander what Dijkstra thought of Fortran.
10:23 PM
Probably a dozen articles on it :)
@FawnLocke I'll google then, thx :)
Looks like he hated that too
> FORTRAN --"the infantile disorder"--, by now nearly 20 years old, is hopelessly inadequate for whatever computer application you have in mind today: it is now too clumsy, too risky, and too expensive to use.
@rues I begin to like the man then.
@FawnLocke still true at the most of it :p
I can't speak to the virtues of Fortran, I have heard that modern Fortran is quite nice to work with, compared to it's older versions.
10:26 PM
@FawnLocke more pleasant yes, maybe...but...still fortran
F77 was horrible...I was introduced in it around 2001 ...
Maybe when we settle on an APL logo, I'll open a merch store.
@Adám how's that going?
If you can share ofc
10:52 PM
“The sooner we can forget that FORTRAN ever existed, the better, for as a vehicle of thought it is not longer adequate: it wastes our brainpower, and it is too risky and therefore too expensive to use.” (862).
11:15 PM
Q: Vector of functions in APL

ᅙᄉᅙWhat is the syntax for a vector (array) of functions in APL? I have tried the following but these are interpreted as a 3-train and a 2-train, respectively: {1},{2} {1} {2} PS. I am looking to do this with more complex (and possibly named) functions by the way, the {1} above is just so the examp...

Who's gonna tell them the bad news

« first day (1768 days earlier)      last day (52 days later) »