Transcript

Transcript prepared by

Bob Therriault

Show Notes

[Alex Alejandre]

00:00-00:19

On the array subreddit, I have not yet deleted a single comment or had to do anything. Everything is civil and productive. There are very interesting links almost every day. And then sometimes like 10 comments on something. You don't get any flame wars or anything nasty.

[Music]

00:19-00:30

[Conor Hoekstra]

00:30-00:42

Welcome to episode 113 of ArrayCast. I'm your host, Conor. And today with us, we have a special guest who we will introduce in a couple minutes. But first, we're going to do brief introductions. We'll start with Bob, then go to Marshall and finish with Rich.

[Bob Therriault]

00:43-00:45

I'm Bob Therriault. I am a J enthusiast.

[Marshall Lochbaum]

00:46-00:49

I'm Marshall Lochbaum. I'm known for BQN. I've used a lot of array languages.

[Richard Park]

00:50-00:54

I'm Richard Park. I'm an APL trainer and do media at Dyalog Limited.

[Conor Hoekstra]

00:55-01:12

And as mentioned before, my name is Conor, host of ArrayCast, fan of all the array languages. And with those introductions out of the way, we, I believe, have two announcements, which we will do first before introducing our guest. We'll start with the first one for Bob, which I think is on behalf of Stephen, and then we'll go over to Rich for the final announcement.

[Bob Therriault]

01:12-02:32

It is on behalf of Stephen, but it's actually, I guess, on behalf of Conor and I. [01] Last summer, Stephen put together an Iverson College at Cambridge. which Conor and I and a number of other people were able to participate in. In fact, we did a couple of episodes based on Iverson College. One, a big panel where everybody who wanted to had a chance to talk about things that they were interested in. And another, we just did reflections, people talking about how it had felt for them. Now, while we were doing the reflections, Miki was videoing these interviews and also taking video of stuff as it developed through the college. Now, she was really careful about making sure people were okay with this. She's released this video now. It's about six minutes long. And it gives you a good flavor about what that conference was like. And also there was a really interesting thing about that conference. There was a lot of new people brought into the array languages. Previous Iverson colleges seemed to dwell mostly on APL. So that's out now. We'll put the link in the show notes and it's up on YouTube. And if you're wondering what an Iverson college would look like, So there's a little bit of information about what it would look like. I'm not sure whether this one was unique because of the new people coming in, but it was very stimulating. It was very interesting.

[Richard Park]

02:33-03:05

Speaking of APL community events, Dyalog's North American user meeting, DYNA. for fall 2025. I think this has been mentioned on some previous ArrayCasts, but registrations are open, and the schedule of talks is available on dyna.Dyalog.com. I'm sure we'll put a link in the show notes. There are talks from... people at Dyalog and also from our users. And the second date also includes workshops where you can come and learn about different aspects of Dyalog and APL.

[Conor Hoekstra]

03:06-04:14

Awesome. So link for both of those will be in the show notes as always and on the website if you prefer to visit there. And with all of that out of the way, it is my pleasure to introduce a first-time guest today, Alex Alejandre. Hopefully my pronunciation isn't too far off. He has many hats that he wears. He is the CEO of a company called Naroduct, but I think we... have him on our radar because he is the current moderator for it said in the email folks I was trying to get this right as introductions were happening it says in the email jkpl but that is not I'm I could be corrected but I'm pretty sure that is the incorrect name of the subreddit it is apljk, I believe, but Alex is the authority on this matter, so he can set the record straight. Welcome to ArrayCast, Alex. First, you can set the record straight on what the actual name of the Reddit is, or if we have two competing subreddits, but then after that, maybe take us back to as far back as you want to and tell us about your path into software engineering, programming, and obviously array languages and how you became or ended up being the current moderator of this subreddit.

[Alex Alejandre]

04:15-08:25

It is APLJK, I believe. I originally discovered J about 10 years ago. I consulted at this company, which was doing some stuff with it. But at the time, I honestly, sadly did not think anything of it. And another six or seven years passed. And through fortune and providence, I found myself writing these financial DSLs in Common Lisp, a lot of declarative stuff in prolog like. And wanting to do better, driven by that urge we all feel to try to do the best we can, I started looking into programming language theory and so on. As a teenager, I liked conlangs, Esperanto, Interlingua, and so on. where people would try to develop these frameworks to choose the perfect sounds for their language, identify the vocabulary, which would be automatically understood by everyone, perhaps. And we've been in this programming language renaissance where new languages are actually gaining adoption, too. Kotlin, Rust, and so on. But most of it seems haphazard without engaging with academia, which honestly is mostly type theory right now. But nobody really thinks about what syntax is or what syntax they should use for a given domain, how to name things in their standard libraries, narrowing down their primitive sets, creating new paradigms or what paradigm would actually best apply to whatever they're trying to do with this language. And DSLs themselves are not actually popular either, although larger infrastructure projects like Docker are inadvertently developing them with YAML configurations. And I found myself in the Racket community, which really embraces language building. And otherwise, there were only these Chavez books about language workbenches. and somehow I've discovered Naur and Iverson who were just transcendent. Like you have this programming as theory building and then notation as a tool of thought so you just need to wrestle with your domain and you can tame your mental model into a single notation and that felt like science. Like you get to develop these primitives and concepts like a periodic table or Maxwell's equations. So I applied like Iverson and Naur's ideas to my own stuff, my own DSLs. Like Clojure, the APL way is about making your base type useful. So you have 100 functions on your one data structure instead of 10 functions on 10 data structures. I think that's one of Alan Perlis' programming epigrams. But I didn't have a foundation in math. And for a long time, that didn't really impact me or my programming, but it was always calling me. And suddenly I felt really motivated to fix this yawning gap. And I remember that just like Lisp, APL was not originally a programming language, but a notation for math. And Iverson was really, really interested in pedagogy. So... I don't know how many books. He wrote more than 10 textbooks, certainly, for middle schoolers and up. And they were actively used in like the 70s in different high schools. I've read lots of things about this. I've met a few people just like in day to day life. I'm visiting family in Syracuse right now. And I'm Syracuse University was prominent in the beginning. I don't know when that stopped. But anyways, Iverson continued that with J. I don't know who wrote the labs, but I think he wrote a book on algebra or calculus. And there's there are ones about fractals and so on. Henry Rich sent me a linear algebra textbook he wrote. I think he was teaching at a high school or something.

[Bob Therriault]

08:25-08:27

He was teaching Marshall.

[Marshall Lochbaum]

08:28-08:30

Well, only for a few years.

[Alex Alejandre]

08:30-08:31

Oh, well done.

[Marshall Lochbaum]

08:31-08:40

Yeah. And I think also most of the labs are written by Iverson, but like anybody could contribute labs. So there are a lot of labs by different people. And I think Roger wrote a bunch too.

[Bob Therriault]

08:41-08:42

Cliff Reiter wrote the fractal labs, I think.

[Marshall Lochbaum]

08:43-08:43

Oh, yeah.

[Alex Alejandre]

08:44-10:03

So they were extremely impactful in growing the community then. But anyways, I dove into those kind of textbooks and that was lovely. So I learned basically all of my math through Iverson's works, mostly the APL stuff. [02] I've gone through, I think, two of the J books and some labs. And blessed as I am as modern, I was able to go through all this with my very own mainframe, where some of these books are talking about sending correspondence code by postcard, perhaps. So there are compatibility issues, unfortunately, because of the age of some of these texts. I don't understand the Dyalog migration levels and so on. And also sometimes I use like Dyalog APL or APRIL. I mostly program in APRIL, like in my actual usage. Robert's practical interest to APL 1 and 2 was very useful for this though, because it shows, it teaches you along the historical evolution of things. So I could jump in at like, whatever point and learn many of the new primitives, but I don't think trains were in there. My big weakness is that I haven't fully understood how to do tacit programming at an APL.

[Bob Therriault]

10:03-11:21

I think you share that with a lot of people in APL. I think it's, it's more, accepted a lot of people. I mean, it's a bit controversial. I mean, that's why we've done episodes on it, because people always seem to have an opinion uh, on whether tacit is clearer, to bring it back into what you were talking about, the primitives and the way they fit together. Some people find that clearer with tacit, but then there's other people who find that just gets in the way because they want the variables, the arguments, to be there to... show how these primitives work together. So it is a lot of people find that gulf. And to be quite honest, to everybody who might be on one side of that gulf or another, you don't have to, and Henry Rich has often said this, you don't have to use tacit. There's no reason, there's nothing, you know, tacit can do the things, I think in just about every case that explicit can and explicit can do everything that tacit can. They do have a few different properties, but it's not like it keeps you from using the language. You use what you're comfortable with. What is best, I guess, for your tool of thought.

[Alex Alejandre]

11:22-14:03

Fair. The core notation itself is, in some previous episodes, I think you guys have talked about symbol MVM in some cases, core BQN, and APL, at least, but I don't fully remember. Anyways, the core notation seems so magical, like Leibniz's alphabet for human thought or something, where it just kind of summarizes everything. Breaking out of that is a bit harder. And that also goes into these issues around programming language design where the whole industry is sort of struggling with this. So we don't know how to do so many things. The wider industry has no idea about many things. in array languages, we're still coming up with new innovations, like array notation is two years old in Dyalog APL. I think BQN started with it, but we're still learning these things. Lisp also, well, Clojure, after 55 years or so also came up with a very similar array notation. And I'm very curious to see, like, in another 50 years, what really sticks out of the various innovations which lead to tacit programming and everything else. So basically, I'm really interested in these aspects, but seeking to learn math, I dove into APL itself. And at some point that jumped into J because... Iverson's later work was using it. But my own personal programming is mostly in common. Well, the last many years were in common list. So my code bases are in common list and therefore I use April, which is generally fine, although there's some, how do you say that word, impedance mismatches or like Lisp has the function or macro first. I don't know if I could call that a verb. And the array languages put them in between. But in a Lisp, you would say reduce, plus, and then you would have your array. And in an APL, you would do plus, well, I guess you're supposed to read right to left, but you would do plus reduce and then your array. And when you start nesting these things, like you have to do a list function to call this APL code, which is also a bit reversed, and you're feeding it in and out, there's some interesting workflow issues which I haven't been able to solve.

[Richard Park]

14:04-14:06

That's actually mismatching the notation.

[Alex Alejandre]

14:06-14:48

Yes, yes. There are also issues on handling large nested arrays which the APL generates and with common lists because most, at least the stuff I'm familiar with, is better at handling large nested maps. Like, Clojure has this Asok in or Get, or at least Janet does. I've been using a lot of Janet lately. And I'm not sure about how to approach any of these things. And I met Andrew Sengul really recently asking about this. So hopefully there will be some solutions soon. He has a lot of code and has thought about this.

[Bob Therriault]

14:49-16:31

One of the things when we had Andrew on before, he was talking about April, which was his compiler built-in list for APL. He was talking about the fact that it allowed him to create structures that APL couldn't create, like control structures and things like that, because of the way LISP is self-defining. I'm wondering, sort of what you're describing to me, the progression of these languages, to some extent, and you say it's, you know, companies or corporations haven't really had a handle on this of how it's developing. But isn't that because you're sort of working... I mean, if I was to use an ecosystem analogy, you've got this context of how the languages are being used and it's survival of the fittest. You're trying to fit different languages to different applications. and there's not really any rules other than when you find one that works, people will tend to use it. But that becomes a little bit random, but again, that's the nature of evolution, isn't it? You're gradually getting somewhere, but it's not in a way that, as you say, is academic or pre-programmed. One of the things I've heard about APL and the Iversonian languages is that there was a lot of thought done initially in that seed of primitives. They were selected very carefully. In the early days of APL, there's lots of stories about arguments between primitives. Iverson and some of his collaborators about what should be in there and what shouldn't be in there. And they really, they're very, very smart people. They really ripped into it to make sure that these things were...

[Marshall Lochbaum]

16:32-16:34

And they didn't stop until they all agreed either.

[Bob Therriault]

16:34-17:10

That's right. The Quaker consensus. They would keep arguing until they all agreed that this was the way to go. Very difficult way to reach an agreement. But when you do reach an agreement... It's very powerful because you're all on the same page. You're going to do what you've all said you're going to do. It's interesting a language that develops that way as opposed to one that develops based on, let's say, a DSL where you've got your domain and you're just looking for a way to express the domain. When you find one that works, chances are you're not going to go on exploring until it's not really working. And then that's when evolution takes over. What are your thoughts about that?

[Marshall Lochbaum]

17:11-17:14

No question. We play hardball on the ArrayCast.

[Alex Alejandre]

17:18-20:13

It's yes, I agree. Not yes-but, but yes, I agree. So, I really like pedagogy. Right now, one of my main projects is writing a textbook for the Janet language, and I'm trying to do this as an introduction to programming, although this will invariably fail and I'll just summarize it for existing developers. Yes. But I've been over the past five or so years, I've read all of these introductions to programming from like the 70s. And well, so everybody likes or talks about SICP as being this great textbook. But there were books before it in the same vein and multiple generations afterwards using Scheme and generally teaching the same ideas. But some of them would also teach assembly or teach like building databases and operating systems in different ways, starting with existing code and then trying to fix different flaws with it. but generally you would get this pedagogical style where you start with a something very basic. You give the student a problem that they're bashing their head against. And then when they finally solve it, you say, perfect. That's this primitive, which all of our other languages have. Now you have a slightly bigger language or bigger world. And then you just kind of step onto the next thing. And, Industry as a whole is, or our entire evolutionary process is largely the same thing, where different companies are running into problems and they build similar tooling, although they have their own, they have different concerns at certain scales. So when... If some company takes out a Kubernetes or a Terraform, that's not necessarily useful for 95% of coding. And a lot of things seem to win out for reasons unrelated to their actual use in software or the general problems that people are trying to solve with them. But everything in reality is mutable. eventually things will fall out and we'll And... get something clear hopefully in the end. So I agree. Evolution. Struggle. I just remembered that Van Roy has this really has these really lovely charts showing how if you add one feature to a language, it allows different paradigms. I think it's in concepts, techniques, and models of computer programming. [03] But there's some really nice chart which we could link, which tries to approach that stuff.

[Bob Therriault]

20:13-20:26

So say something like rank polymorphism allows a language to do things that array languages often use that. to be able to extend across an array. A language that can't do that is going to be limited in that way.

[Alex Alejandre]

20:26-20:43

Like there are combinations of features, which if you are missing one of them, the other features aren't so useful. So they'll generally come in groups somehow. Like if there weren't useful arrays, that you wouldn't get anything out of it in that sense.

[Conor Hoekstra]

20:43-21:01

What kind of diagrams are we talking? I just found the... a very legal copy, I hope, of this textbook floating online. And I'm perusing through it and there are a plethora of diagrams. Some are kind of like flow chart-y.

[Alex Alejandre]

21:01-21:13

The one I'm thinking of at least has a flow chart, but also X and Y coordinates. but he has a lot of them and I'm not necessarily sure I'm thinking of the right one

[Conor Hoekstra]

21:13-22:13

Maybe I'll ask the Gemini's or the chat GPT's to replicate or just tell me the page number it's on I mean speaking of textbooks it seems like and there's a number of things we can double click on that you've because we've We've covered a lot of ground, including mutable reality, which I feel like I'm losing grasp of in this conversation. It seems like you've gone through a lot of content, both in the form of labs and languages and textbooks, and you're even working on a textbook yourself. From all of the clearly hard work that you've done, do you have a recommended path or resources for the... Maybe not just array language curious, but just curious young person in general? Yeah. Or maybe not even young. You could already have learned a ton and are still looking for whatever a new book. Because it sounds like you probably do if you've read. consume so much of this content?

[Alex Alejandre]

22:13-23:46

It's really hard. You have to tailor it to the student, not just their knowledge and goals, but their sort of character or what they expect out of the process. Some people want to... basically start at their exact abstraction level according to their goals or problems. So web development, for example, and they would not actually care to learn about the operating system. They wouldn't care to even realize that the browser is running JavaScript, which is written in a different language and so on. Other people want to start at the very bottom and build every abstraction up and fully understand everything to then ignore everything like underneath when they're... not ignore, but not needed necessarily. And some people will argue that it's very important to learn everything. theoretical things because it helps with the real problem solving perhaps and the same concerns generally recur in different areas but I think you have you really have to tailor it to what somebody wants and oftentimes people don't know what they want because they don't actually understand the fields and they don't understand what different concerns there are and they just kind of... they start targeting something they'll spend two years learning and when they get there they'll realize actually I like this thing I had learned before and didn't notice at the time.

[Richard Park]

23:46-23:50

Are we talking about teaching computer programming or maths or that we're talking about?

[Alex Alejandre]

23:50-23:52

Honestly, everything.

[Richard Park]

23:52-24:21

Because the resources you've described so far seem to come from an interest in, like you said, programming language design and then some natural language stuff before that. So there are, you know, luckily with the Iversonian Array Languages, quite a lot of resources that show you this sort of history of development. But do you think about any that are sort of recent or... Yeah, I guess that's my missing... that's my gap in this question, is what are we looking to teach and learn?

[Alex Alejandre]

24:22-25:08

I at least was approaching this in a general way, and then I was going to try to recommend some concrete things. So, the hardest part of answering this is that there's so many things, and I don't remember what they're named, for example. So out of all of the Array languages, I think the Uiua course is designed the best. I have not gone through all of it, but it just seems so nice and succinct and well-structured. There are lots of really, really lovely things for Dyalog APL. But I don't know how to describe them. There's this page that has a sidebar, of course, but it's just a flat website that some random guy wrote in the last five years, perhaps. TryAPL has...

[Marshall Lochbaum]

25:08-25:10

Yeah, I was thinking TryAPL, but that's pretty old.

[Richard Park]

25:10-25:13

If it's the one I'm thinking of, it's not that recent.

[Marshall Lochbaum]

25:14-25:15

It's been revamped.

[Richard Park]

25:15-25:17

No, even the APL Tutor, probably.

[Marshall Lochbaum]

25:18-25:18

Oh, yeah.

[Richard Park]

25:19-25:28

APL Tutor, is that the one with the... the conversations you've got the dialogue between the fictional implementers I have never seen that

[Alex Alejandre]

25:29-25:30

I have never seen that before.

[Richard Park]

25:30-25:32

So I guess not

[Alex Alejandre]

25:32-25:34

It's Stefan Kruger's Learning APL

[Richard Park]

25:34-25:36

Oh learning... yeah Stefan

[Conor Hoekstra]

25:36-25:43

I love how we had two different guesses and both were not what Alex was describing.

[Alex Alejandre]

25:43-26:00

This is precisely the issue though. There's there are actually so many awesome courses that's And I haven't gone through like even a third of them, but I continuously find very interesting things that have different approaches and I bookmark them for later, but later never comes.

[Richard Park]

26:00-26:01

I know what you mean.

[Conor Hoekstra]

26:01-26:38

I literally have like three different lists of like books to read slash like PDFs, like, lectures to watch, and then, like, TV shows and movies to watch. And they never disappear. Like, even if I scratch something off, in the process of scratching that thing off, like, three more things get added to the collective list in total. And I've just come to accept that, like, life is just about having lists where... You scratch things off and you add things, but the lists never disappear. That is just life. Life is just having lists that are continuously growing. Sometimes they shrink for a moment. But when I was younger, I used to think, yeah, one day these lists will be empty and I'll have a nice week of peace and nothing to do. And it's just, it's not going to come.

[Marshall Lochbaum]

26:39-26:44

One time I got through my albums to listen to and I was like,

[Richard Park]

26:44-26:45

That sounds devastating.

[Marshall Lochbaum]

26:45-26:46

Now what do I do?

[Richard Park]

26:46-26:48

You have to do silence for the rest of your life now.

[Marshall Lochbaum]

26:48-26:50

Well, it was pretty easy to come up with more.

[Conor Hoekstra]

26:50-26:56

Back to the concrete examples though. I interrupted you, Alex.

[Alex Alejandre]

26:58-28:09

So I think the J-Labs, like when you download J and you type JX, those seem to be... very, very nice. Like the overall Uiua course as an HTML page is really cool. But the Uiua labs have a very special workflow, which I also really like. But as for array languages, there's almost too much material. But there's nothing that-- this is an overall problem, I think. There's so much material. There's so many different-- like in the past, there have been many different companies. And there are different corporate programs to try to popularize things, different forums, which maybe were popular for a while and then stopped being used. And it's not necessarily that there's a lack of centralization, but there's a lack of a summary explaining this was... very popular and useful for this time, and then it got superseded by this to help somebody actually get an oversight of the entire community or ecosystem. That's a big place where I often get confused and I constantly find something new which would have been really useful, like... six months ago.

[Richard Park]

28:10-28:35

I was going to ask about, Alex, you've become the moderator of the APLJK subreddit. And I'm guessing that means that you've had a fair amount of participation in online communities or other communities for programming and other stuff before. So I wanted to hear both how you became the moderator of the APLJK subreddit and also your experience in other sort of online communities.

[Alex Alejandre]

28:36-29:34

I read about Catherine Lathwell's APL movie, [04] and I was trying to find how to watch this or if it actually existed. I wanted to post on the subreddit, but it had been locked. I believe the account was deleted or something. I'm not sure what happened. And I moderated two other larger communities unrelated to programming. And there's not really too much effort involved. You have to delete lots of comments on Reddit, but that's easy. And so I made an application about a week later, they approved it because the subreddit had been abandoned. And then I enabled commenting so I could ask this question. I believe the answer was that... the project was stalled somehow, so you cannot actually watch it, but it was displayed at one point somewhere at a conference.

[Bob Therriault]

29:34-31:01

I think it was at the J 2014 conference that Catherine was there, and I think she showed a few clips, but I think that's all that was ever put together. I don't think... anything was completely assembled, life being what it is and documentary filmmaking being what it is. Catherine had other things that she had to do, and it's a tremendous effort to what she did. She was able to get some clips of people that have since passed, which is that, you know, in terms of archival footage, that will be important, and she has captured that, so that's great. The last I talked to Eric Iverson about it, Eric was saying that she was looking at how to transfer some of the formats that she recorded on because video being what it is and the number of different iterations we've had in standard definition, high definition, and so on, as well as all the way from Hi8 to SuperVHS to all the other different formats, she has recordings in some format she's got to transfer over. I'm not sure that she's digitized them yet. So that's kind of where that project sits. But I don't believe it was ever completely put together. I think what she did is assembled a lot of different interviews with people. Some of those have been shown. Some of those you could actually... Yeah. I've seen at different points on YouTube. I'm not sure whether they're permanent or whether they just float up from time to time

[Alex Alejandre]

31:01-31:06

She also has a YouTube channel with some clips and I believe a few larger interviews

[Bob Therriault]

31:06-31:10

And that's probably the way they that's probably their home.

[Conor Hoekstra]

31:11-32:18

We went through the same journey, well not the exact same journey, but when I was falling down the APL rabbit hole back in like December of 2019 and I found the same like posts of there's this movie at some point called men who stare at arrays. And I was like, Oh my goodness. Like I have to go get my hands on this ASAP. And, uh, I didn't end up, you know, trying to become moderator of form in order to ask a question, but I got the same answer probably from like, Adám or something where I was like, where is, and I actually, I'm not sure if this is accurate, but at one point or maybe still, Catherine, cause I think she's based in Toronto or was at some point. And, and she had some involvement in like a cafe. That's actually quite close to where I live. And I was like, Oh, maybe I should go and like, see if I can find her at this cafe. I ended up getting my answer before I, you know, started having stalkerish tendencies or anything. But, you know, my hope is that like, there'll be some revived work, or if not revived work, then, you know, we can feed all the content to some kind of documentary producing AI thing. And it'll just, it'll complete the rest of the work for us so that we can still watch it at some point.

[Richard Park]

32:18-32:33

Conor's optimistic I'm slightly terrified yeah I mean I mean if no if no one's gonna make it wouldn't you rather have some like i've seen i've seen ai content targeted at apl media and uh

[Conor Hoekstra]

32:34-32:41

I don't know I think it's uh it's not it's not we're not looking for ai slop we're looking for ai editing stitching together you know

[Richard Park]

32:42-32:47

No, no. If there's not generated horrible voices singing songs, I'm not interested.

[Bob Therriault]

32:49-34:01

And all I would say is, from what I hear you describing, is the tools might be AI generated, which makes it easier to put something together. Which I'm a little leery about because I'm not sure how much your tools affect what you're doing. But that is controlled by a human being who has a point of view, which I find very important to documentary making. If you don't have a point of view or if your point of view is a collaboration of, you know, the internet, that does, I think that is something that I find, I'm not sure what you call it. I don't know what you call it a documentary. It's something else because it doesn't have, doesn't have a point of view. And a point of view is a very important part of a documentary. It always is that bias. And I'm not sure you can see the bias with AI if it was controlled that way. But anyway, Catherine is a lovely person. I met her in 2014. And again, that project is a huge thing to take on. It may be that you have tools that allow it to be, you can put it together. But whoever puts it together will have a point of view. And so that will be part of that documentary.

[Richard Park]

34:02-34:13

Yeah, someone make the APL wiki page for that and paste all of the existing links. and I don't know who's going to rally the person to finish that movie, but that would be really good.

[Bob Therriault]

34:13-35:00

I know Eric had been talking to Catherine about it and the big stumbling block at this point was the footage he has that hasn't been digitized. So that could be a technical thing, but these things pop up. I mean, that was... part of the Iverson College it was an I.P. Sharp episode that I edited while I was at Iverson College and that was audio information that came from a CBC Ideas interview that Bob Bernecky had that people didn't realize that all those raw tapes were around or that raw audio was around and it's amazing stuff I may end up running it in the next couple of weeks or months again, because it's really interesting to hear.

[Richard Park]

35:01-35:11

Yes, this archive stuff hasn't been collected. It's still just sort of spread around various sources, is it? Or does Catherine have basically as much as exists?

[Bob Therriault]

35:12-35:32

I believe Catherine would have as much as exists. She was part of the collection of the video at that point. So I don't know of anybody else who was making those things. And she was also... At that time, looking at different sources that had already been recorded, I mean, there's the famous old, old, what is there? There's a panel conversation with Iverson and Roger.

[Richard Park]

35:33-35:41

Now there's Adám's old podcast as well. The Fireside, Fire, Campfire.

[Alex Alejandre]

35:41-35:44

Yeah, there's a few podcasts. I had a few podcasts, I think.

[Bob Therriault]

35:44-35:51

Yeah, Richard and Adám did a few. You did, what was it, a series of five or six at one point?

[Richard Park]

35:51-35:57

Yeah, we did. We started a few. Can't maintain the momentum like a ArrayCast juggernaut

[Bob Therriault]

35:59-37:07

It does it is something that um if you're interested in getting into podcasts I encourage you to try it um and uh I'm looking to see whether Conor's smiling right now, because he's certainly done a series that's gone on and on. But I encourage you to try it, because get the feel for making something like this, and then see if you can make a series, because that actually is, there's a different mindset that will go into doing something that sustains as opposed to something that's one-of. You'll learn a lot from the one-of, but the sustaining of the idea is its own skill. and it's kind of neat if you can get yourself into that zone and keep something going. There are rewards for that in terms of the things you learn and the way you look at the world looks at you when you look at the world. But it's not a given when you start these out that they will continue on with a life that... that sustains. And as a person involved in the community, Alex, I've got to thank you for taking on that moderator role because for a while there, that was just...

[Alex Alejandre]

37:07-37:09

It's literally the least I could do.

[Conor Hoekstra]

37:09-37:14

I never understand that. The least that anyone can do is nothing, like by definition.

[Alex Alejandre]

37:17-37:40

I mean, that is what I mean. I have done zero moderation since writing the application, which took about two minutes. and my other activities take up much more time like just finding interesting links and posting Yeah. them around on hacker news lobsters and so on that that takes more time than the moderation

[Bob Therriault]

37:40-37:48

So you were mentioning you you have other subreddits that you moderate how does the APLJK, and I've got to admit, I put J first, and that's probably just, you know. .

[Alex Alejandre]

37:48-37:49

Oh, no worries.

[Bob Therriault]

37:49-38:02

But how does the Array subreddit compare to the other subreddits you're moderating? Is it more civilized? Is it..

[Alex Alejandre]

38:02-38:40

The other one is... It invites a lot of politics and we delete about half of all the comments that go in there. On the array subreddit, I have not yet deleted a single comment or had to do anything. Everything is civil and productive. It's just a matter of there's not so much coming in. like there's there are very interesting links almost every day and then sometimes like 10 comments on something but you don't get any flame wars or anything nasty so it's very easy.

[Bob Therriault]

38:40-38:43

I feel like we're troll baiting right now. We're just...

[Richard Park]

38:45-38:51

We've come to the APLJK subreddit. It's nearly unmoderated.

[Alex Alejandre]

38:51-40:26

Well, in some situations, there is an adage that the best way to get an answer on the internet is to be wrong. And some communities will intentionally keep problem users who are very vocal about wrong things in order to drive conversation and engagement. I mean, that would increase work for me. But hypothetically, if you wanted to really grow the community, if we wanted to do real community building, get all the different organizations, companies involved, we could make some crazy claims on there. Just have somebody say, oh, those symbols are just blah, blah, blah. What you should actually do is this. and just start crazy flame wars. And that would actually, I think, be healthy for the community because it would centralize everybody in some way also. And depending on the people involved, you could get some really interesting insights as a similar effect to like to interviewing people where you can really get cool stories coming out. I don't know what kind of flame wars you would have to do, but I found this a Forth group on Facebook with all these guys who are working on it in the 70s and they're fighting about like what the best machine was at the time. So perhaps we could do something about like in 1984 was Sharp APL or something else, the best opportunity, the best something. And then they could start talking about like contracting disputes. I don't know.

[Marshall Lochbaum]

40:26-40:34

1984 was just the right time because that's when APL 2 came out. [05] And that was the nested model, and Sharp was the boxed model.

[Richard Park]

40:34-40:40

We're going to bring up all the classic APL Flame Wars, which is floating or...

[Marshall Lochbaum]

40:40-40:42

Well, there's also the K-List model, so...

[Richard Park]

40:42-40:42

Yeah.

[Marshall Lochbaum]

40:43-40:43

Got that.

[Richard Park]

40:44-40:57

Exactly. Boxed or floating, boxed or nested. And then Marshall comes in with based. And then we need... We'll fight about index origin as well.

[Marshall Lochbaum]

40:57-41:21

Oh, yeah. We've gotten kind of quiet about that. There's not so many. I mean, everybody kind of acknowledges that zero is the right way if you don't have a real serious compatibility with something else or whatever. A lot of people think my opinion on this is weird because I'm not really that polarized. I'm very sure that zero is right, but I also agree there are some drawbacks and it's not a huge mistake to go with one-based indexing.

[Alex Alejandre]

41:22-41:30

There's some bleed through though because it also changes the until to be the ending number including or not including.

[Marshall Lochbaum]

41:31-41:41

I think trains are a big issue now, actually. Yeah? Yeah. Well, I mean, we've got tinyAPL and Kap now both have alternatives to trains that use a different syntax.

[Bob Therriault]

41:42-41:54

I find whenever there's a topic on Hacker News that involves APL that you see the traditional flames start to erupt. And usually it's to do with the look of the language. And then it's the...

[Richard Park]

41:54-42:01

Well, this is why we have so few internal flames, I think. you know we're always banded together against people who think the entire idea is outrageous We're...

[Bob Therriault]

42:03-42:15

yeah Marshall's just posted apl bingo which is a link in the apl wiki so that you try to get a bingo card based on the comments that you see on on hacker news yeah

[Richard Park]

42:16-42:19

And we're just going to post each of these in turn to the subreddit and see what happens.

[Bob Therriault]

42:22-42:25

See if we can develop some crazy community.

[Alex Alejandre]

42:26-42:27

I look forward to it.

[Bob Therriault]

42:28-42:30

You'll be busy deleting comments for a while.

[Alex Alejandre]

42:32-42:58

How does community building work with the different like companies evolved um besides Dyalog there's KX and I don't know to what extent J software is those things like the website the way back machine shows it as like a community? actual company and nowadays it seems more of an archive and like links to wikis and so on and things have been open source.

[Bob Therriault]

42:59-44:09

In terms of community, the most recent thing I was involved with was the JWiki needed to be cleaned up and the J software group didn't really want to, I think, take that on. And so they made it more of a community thing, which is one of the things I did for a couple of years was had meetings with people and brought people in. And the cool thing out of it was the things that got developed out of it, aside from the wiki, was things like the J Playground and... Ed Gottsman's APL portal, or array portal, that has opened up some really interesting tools for looking at information across the array languages. And I would say those things are probably even, well, certainly not even more important. They're more important than the work that we did in the wiki going forward. The wiki will be what it is, and it'll develop. But these other things were sort of new tools that came along. Although APL or the Playground, the J Playground, really was a response to Adám pushing me the fact that there was no TryAPL for J, that there should be, and he was right.

[Richard Park]

44:10-44:20

Yeah, Stephen's not here to say, but I'm fairly sure KX do a lot of their own... community events and stuff. I see announcements about live KX meetups and stuff like that.

[Bob Therriault]

44:21-44:55

Well, yeah, we recently had Ashok on and I think that's one of the things that he was talking about developing a Slack channel for KX and a number of other things. It's not so much that they're trying to control that direction of the community, but they're providing those tools for the community to talk to each other. And that seems to be the direction they're going in addition to the opening up everything with KDB-X, which was our most recent episode and talking about what they're trying to accomplish with that, which is very interesting to see how that community grows because that's a very big change to the way people would interact with the language. Takes it up another level.

[Alex Alejandre]

44:55-45:16

So I'm mildly scared of... continued atomization. Would it somehow would it be possible to unify those efforts in some way to make them not just be like for this subset but try to bring all..

[Richard Park]

45:16-45:49

There have been discussions about an array con or and we have like the far you know the discord and the subreddit are joint across array languages. But I can't remember what happened in discussions about an array con or things like that. I think the atomization is almost... I think that's unavoidable because there are different systems with different peculiar and specific... issues, concerns, things that people will be asking about for one group are not going to necessarily apply to another group, even though there's lots of commonalities. Like I said, I can't remember what happened. I think it's just...

[Marshall Lochbaum]

45:49-46:11

It's interesting that, like you say, there is a unified community. We had the APL Farm with I mean, users of every major array language are there. And lots of people use many of them. And then the companies are still all doing their separate thing. And a lot of people who only work with one language might not feel the need to get into this unified community.

[Richard Park]

46:11-46:56

I think that's the difference. You've got a community of enthusiasts who like to cross pollinate their ideas and developers and implementers and stuff who all talk to each other. And there are a lot of sort of day-to-day users who largely aren't interested in anything to do with the theory of programming languages, programming array languages, or anything like that at all. They basically might have a particular question about the thing they're specifically using, but otherwise aren't going to want to scroll through pages of implementers talking about the minutiae of whether trains should behave in this way or that way. Maybe there's room for just another channel for that. Yeah. For general inquiries for people who aren't...

[Marshall Lochbaum]

46:56-47:00

I don't think yet another channel is a solution.

[Richard Park]

47:01-47:03

Sorry, let's atomize more.

[Marshall Lochbaum]

47:04-47:13

We have language-specific channels. But I mean, most... Most language users are just never going to interact with really anything but the official documentation, right?

[Richard Park]

47:14-47:15

That's kind of my point, yeah.

[Marshall Lochbaum]

47:15-47:17

If the language isn't good, that's how it should work.

[Richard Park]

47:18-47:23

Not to say that we shouldn't do more in that vein, you know.

[Marshall Lochbaum]

47:23-47:43

Yeah, I mean, so clearly there are a number of people looking for community and sharing ideas and that thing and trying to grow in their appreciation for different languages. And they're, I expect, very outnumbered by people who have a job, want to get it done and feel that this language is the best way to do it. Yeah.

[Alex Alejandre]

47:44-47:54

What is the user-based composition like? How many working programmers are there in using q versus APL versus so-and-so?

[Richard Park]

47:55-47:59

Great question. We should do an array language community survey. Who wants to conduct that?

[Marshall Lochbaum]

48:00-48:06

Well, the problem is how do you ever get it out to that crowd who's not interested in community?

[Richard Park]

48:06-48:11

You have to put it in the source code of all of the interpreters and compilers.

[Marshall Lochbaum]

48:11-48:15

Ah, so yeah. The free version of k.

[Bob Therriault]

48:15-48:16

You spam them.

[Marshall Lochbaum]

48:16-48:20

The only condition is you have to answer a survey for us.

[Bob Therriault]

48:20-48:23

Oh, that'll go well.

[Marshall Lochbaum]

48:24-48:29

Actually, that was more or less what the Dyalog used to be. The student version.

[Richard Park]

48:30-48:34

We used to have a Nagware version, I think. Was there a survey?

[Alex Alejandre]

48:34-48:35

There were a few questions, I think.

[Marshall Lochbaum]

48:35-48:41

There was some version where you had to send in an email and say why you were going to use the language, I think.

[Richard Park]

48:41-48:44

I think there might have been a field like that, yeah. That was a while ago.

[Alex Alejandre]

48:45-48:45

It was very intimidating.

[Conor Hoekstra]

48:46-49:23

Yeah, that was the issue. For what it's worth, I did buy the domain arraycon.ca with the... intentionality of setting up some virtual conference, but I just don't have time. And if at some point I do, maybe I'll revisit that. But yeah, there's just not enough time in the day to do. Like I said, I got all these growing lists of things as well as a job and life events. So. But if somebody out there wants to organize some virtual, you know, array con, I'm sure there would be many folks, including me, that would be interested.

[Bob Therriault]

49:24-50:29

Well, I think at one point we were trying to talk Stephen into doing something like that, since he was already doing Iverson College, [06] which has a different purpose and is at a different scale. But he certainly had experience bringing people together into an area. I think he pleaded the same way you did, Conor. He said, no, there's just too many things I have to do. I don't need to take that on. And I suppose to some extent, well, there's a combination. If there's a strong enough interest to do it, it may happen because somebody may think it's important enough to do it. At this point, I would say the communities seem to be more comfortable within their own areas and not needing to come together. And that may even happen more so going forward because I don't know that... The approach of people doing AI-assisted coding is going to help the array languages. And so I have the feeling that might take people down separate paths as opposed to trying to put them together.

[Alex Alejandre]

50:29-51:15

That's its own very, very large rabbit hole, whether... industry is cannibalizing itself or whether this will make things be like they were before this eternal September, where a lot of people just join or study computer science for jobs instead of having a passion already. But I would really like to do more community building. Like, I believe I was invited because it seems like moderating is a large task. And thankfully it's not. But I would like to actually do that extra step. I don't know if helping to arrange a conference is, I think that would take more time than I have. Although, I'll send an email.

[Richard Park]

51:16-51:17

Are you active on the Discord too?

[Alex Alejandre]

51:18-51:22

I had no idea there's a Discord, but I also don't like Discord, but I will join it.

[Richard Park]

51:22-51:34

I believe it's in a... Last I heard, it's in a similar boat where there is some de facto moderation that is not particularly... You know, it was sort of... It fell onto some people, right?

[Marshall Lochbaum]

51:34-51:56

So Dzaima, who's my co-author on PQN, is the owner of the room. And he very rarely takes moderation action. Other than just banning spam. I mean, spam bots are very obvious. There's no confusion about that. Or there's no point of view when you ban a spam bot. But yeah, so it's lightly moderated.

[Bob Therriault]

51:56-52:09

And I have to give him credit. He does an excellent job. I've seen him diplomatically deal with some issues with a very light touch, but well thought out. And that's not an easy thing to do.

[Marshall Lochbaum]

52:09-52:20

Yeah. I mean, so we, I guess we, and I try to do this some as well. We try to just talk things out rather than resorting to We're in charge here.

[Bob Therriault]

52:20-53:32

I did take a master's in learning distance education. Yeah. So that was one of the things we were taught about was dealing with online communities and how you manage that stuff. And it is it's its own world. and it has really to do, from the things I learned, it has to do with almost establishing an atmosphere. You're trying to create a situation where people would be more comfortable putting in productive comments than they would be putting in destructive comments. And you can't... It's kind of like gardening. You can take out the weeds, but you can't eliminate everything. You have to let things grow, but you're just trying to hedge things towards being a more productive exercise. And if you can do that, it's a very difficult thing to do because your tendency as a human being is to go in and try and fix something, or a lot of people have that tendency. And if you do that, you're inevitably going to create bigger problems. But if you can just encourage the community in the right directions, you let it grow in the way that it should. So it's like pruning a tree as opposed to constructing one.

[Alex Alejandre]

53:32-53:37

There's so many gardening or agricultural metaphors in education.

[Marshall Lochbaum]

53:39-53:42

Well, yeah, it's funny. And our two forums are the APL orchard and the APL farm.

[Alex Alejandre]

53:44-53:49

And then you cultivate learning. I often think of moderation as pruning.

[Bob Therriault]

53:50-55:12

Yeah, I think when you're taking something out or you're taking out a comment, you're definitely pruning there. But then it's the thought towards, as Marshall says, if you've got spam, it's an easy snip. You know, that's going to cause a problem. Take it out. We need air between the branches. but there are other things where you have to be very careful about what you trim because that whole branch could be really productive if it went in a productive way, and it could also, there's a risk, but you have to be so light with the touch and not be overly concerned with the results because sometimes I think as you're pointing out, Alex, you have to get the controversy going to be able to generate the energy that moves the group forward. And it's a real... There's so many things I learned in that process about the way people react to each other and the way your point of view... Getting back to the documentary stuff, the way your point of view affects what you want to have come out of something. And as you start to realize that, the world widens and deepens. You feel like there's a void dropped out from underneath you. And how much do you really understand? And then... uh that's where the light touch comes in

[Conor Hoekstra]

55:13-55:40

It seems like there should be some like call to action at the end of all this we've been talking about uh many different aspects of community uh pedagogy learning and uh I don't I don't know what the call to action is but uh I don't know Alex if you have any call to actions and you would like to put them out there whether that's people getting involved in something or contributions or not even anything like that. If it's something else, I'm not sure. Do you have any call to actions or?

[Alex Alejandre]

55:40-55:54

I would like to do a survey and we can, I don't know, try to collect people who would want to do something, help organize something or at least attend or watch or whatever. Yes, calls to action would be good. I like this idea.

[Bob Therriault]

55:54-56:10

There's always the point at which Conor says something about if you want to get in touch with us, and there's an immediate call to action where we say, boom, you got contact at ArrayCast.com. [07] And that's always a good way for...

[Alex Alejandre]

56:10-56:11

Oh, that's what you're referring to.

[Bob Therriault]

56:11-57:48

You may have specific ideas about where you want to go with things. But I think in a lot of cases, as silly as that sounds, always putting the contact out there, I think that's the way that you do grow a community is you try and establish a line of communication and consistently answer emails and get emails in. Yeah. And the emails have picked up. People have... a few episodes ago, I was saying the emails have kind of dropped off and Conor said, well, that's kind of the real estate thing in the summer, right? And maybe it was, but they've picked up again. We've had some really interesting emails come back in. But it is something that you keep those lines open. And I guess... for your purposes, Alex, whether or not you want to have people come into the Reddit that way. That's probably your most visible public interface for people in the Array community. If they weren't aware before of the APLJK Reddit, it's certainly worth looking at. And you've spent... Your curation of the links that you put in are really interesting. They've helped me in a number of different areas. And that's something that exists right now. And I think if I was going to say a call to action, I would send them that direction because then you can take that wherever you want. You can put polls on there. You can do all that kind of stuff. But the community has to interact with it. And I guess it sounds like there may be a really good flame war going on when you go in there now. Who knows what we've done?

[Alex Alejandre]

57:49-57:50

Who wants to start posting from the bingo?

[Marshall Lochbaum]

57:51-58:00

Yeah. So our call to action is if you want to contact us, you know how. But consider, do you want to contact just us or do you want to contact everyone?

[Alex Alejandre]

58:00-58:01

That could be nice.

[Marshall Lochbaum]

58:01-58:01

Yeah.

[Bob Therriault]

58:02-58:06

I actually had a lot of sort of idle, but interesting questions. You guys might.

[Conor Hoekstra]

58:06-58:14

Oh yeah, sure. That's also, yeah, definitely flip the script a bit. If you've got stuff you want to either ask us or, or the listener, uh, now is the best time.

[Alex Alejandre]

58:15-59:00

So I have all of these, I'm very interested in the history of APL, all the pedagogy that's been done. Um, yeah. In the past, there were many companies. Now it seems like Dyalog won out in terms of APL. I don't know whether or not that's actually true or it's just because that's the public facing image. IBM was still maintaining APL2 until recently and now some other companies doing it, but... They don't do public outreach, perhaps. Like, what is actually the overall Ray community? Like, the podcast has a huge shadow because you guys exist. But what other things are there that don't get included?

[Marshall Lochbaum]

59:01-01:00:15

Well, I think the big dark spot that none of us really know about... And regarding IBM, I would probably say they're just kind of out of the game now. I mean, IBM the company is, but also this logon company, which is managing APL. They don't really seem to be doing anything with it, as far as I can tell. But the big dark spot is this APL2000, or APLNow, I think is the actual name of the company, that sells APL + Win. I think there are still a lot of people using that. Yeah. And they've got a forum for it, which has some activity. It's like APL developer network. So it's really hard to estimate, you know, how many people are still using that because the company is just like, very quiet about all sorts of stuff. You can't even get documentation for the, for APL + Win without like having a contract. So other than that, I think most things are at least a little bit public, but yeah, a lot of these other companies, they've not done any public outreach to the extent that Dyalog has, but they've, they've not been quite so quiet.

[Alex Alejandre]

01:00:16-01:00:30

How did Dyalog end up the most popular these days? Like on the APL Wiki, it says in the early 80s and Um, maybe until the 90s, it wasn't popular at all. Like what changed?

[Marshall Lochbaum]

01:00:30-01:01:13

Yeah, it was a lot of slow growth. One person who gets, who many people say is, has a lot of credit for that is John Daintree, [08] who joined, sometime around 1990 and started working on this really nice toolkit for building GUIs in Windows. So that was what it was known for for a while. And you had John Scholes` dfns, which I don't know if those really drove adoption, but I mean it was clear that the language, they were keeping the language more alive in some way. and they picked up features here and there from other dialects, so maybe that all helped. It's hard to say exactly.

[Alex Alejandre]

01:01:14-01:01:29

Do you guys think there's something like a Lisp curse in the array language world, where people... Well, in the past there were the different venders, and now there are different languages. I don't know.

[Richard Park]

01:01:29-01:01:47

Some people ask this about, like, how come there seems to be, like, one Python. I guess maybe it's not as true as people who don't use those languages a lot think I mean how and one... much how much fracturing is there in C++ land Conor like in i the actual reality but it's just C++ is C++ because standards committee.

[Marshall Lochbaum]

01:01:48-01:02:26

Well I mean one big thing about in apl is like we said with the base and or the nested and box models, everything but based. So Iverson actually left IBM, maybe not entirely because of, but a big reason was that he just didn't agree with the nested model at all. So I went to I.P. Sharp to work on that. And then his model lost everybody, everybody preferred the nested array languages. So we have definitely the creator is no longer, at least directly, in charge of the language. And that means there's no one centralizing point that we have anymore.

[Conor Hoekstra]

01:02:27-01:02:53

But there's no real fracturing in the C++ community, because even though there's multiple compilers, they're all implementing the same language, right? Whereas in the array language community, the fracturing is J versus you know, APL umbrella, which, you know, includes a bunch of different APL implementations versus k versus q versus Uiua versus all the non Iversonian languages like Julia and MATLAB.

[Richard Park]

01:02:53-01:03:00

It'd be like if C and C plus plus were less popular and something like, or whatever.

[Conor Hoekstra]

01:03:01-01:03:19

Yeah, I think it would be more like if C++ had more instances of Circle, which is an implementation of C++ with a bunch of extra features. And if there was like four more of those and they were all stealing land share from C++, that would be the analogy that's apt, I think.

[Alex Alejandre]

01:03:19-01:04:07

I recently read a comment which has made me think a lot. So there are different hosted APLs. Like, I think Dyalog works on Python and Java somehow. I've not looked into this, but there's April and then May for Common Lisp and Clojure. There's not a June. However, somebody did J in Janet. There's we apply and there are all these other versions, but some guy thought about using an array notation in the same sense that we use like regular expressions or peg grammars for text as a way to, you know, well, not just work with arrays, but work with numbers in general, possibly. And I think that paradigm could be very interesting in the future.

[Richard Park]

01:04:08-01:04:18

Because that's what Iverson had hoped in a way, but doesn't it come down to often the difference between mathematics and computation, where they're kind of slightly different?

[Alex Alejandre]

01:04:18-01:04:18

Yeah.

[Conor Hoekstra]

01:04:19-01:04:22

Any final questions for... For us or the listeners?

[Alex Alejandre]

01:04:23-01:04:26

Why haven't you sent an email yet to the ArrayCast?

[Conor Hoekstra]

01:04:30-01:04:43

Speaking of which, if you want to send an email, either because you feel bad now after Alex's question, or you just have always been waiting for a reason and now you have no better reason... You can reach us at...

[Bob Therriault]

01:04:43-01:05:53

Contact at ArrayCast.com is the way to reach us. And as I mentioned before, people have been reaching out. That's been great. And we'd love to hear your emails and your suggestions and discussions we've had. And I hope they're productive on the side of people that are sending them in as well. I'm certainly getting a lot of them. And I do forward a lot of them over to the... panel to let people know what people are thinking and give us an idea about what the response is. And we're very gratified when people send in emails that tell us that they like what they're hearing. And honestly, quite often we get into very technical discussions where we're always surprised at how much people come in and say, well, these are the ones I love, when we really don't know whether we're going to lose people. So there'll probably be more of those coming up as we go along. But certainly one of the ways to keep a podcast going is not to lock it into a certain format and allow it to change and adapt. And I think I was actually particularly interested at the end of this one where Alex flipped the script and started asking us questions. I think that was really cool. But anyway, that's ArrayCast.com. Contact at ArrayCast.com. and we look forward to hearing from you.

[Conor Hoekstra]

01:05:54-01:06:12

And thank you so much for coming on, Alex. This has been a thought-provoking discussion, and yeah, as we mentioned before, if you have thoughts on any of this, send us an email, send Alex an email, or reach out to him. I guess you can just, the best way, just post on the... post on the subreddit. I mean, that's how this all started.

[Bob Therriault]

01:06:12-01:06:58

And apparently the subreddit is APLJK. And if you haven't looked at it, you should, because that does seem to me to be at least one place where we have a community. And then the other things that were mentioned are the Discord, the APL farm, and as well, the APL orchard, if people are interested in those areas because I think those are areas of community too. They are around. People don't always know that they're there. And if you're into J, I always direct people to the J forums. It's a message list and stuff. It's like emails back and forth. But probably the best source of talking to the people that are really working in J because they all post on it. They all get involved with it. So it's a good source for the J community.

[Conor Hoekstra]

01:06:58-01:07:01

And with that, we will say happy array programming.

[ALL]

01:07:01-01:07:02

Happy array programming.

[Music]

01:07:02-01:07:17