Hi all. The programming guide for oK mentions a 1970 paper by Philip Abrams that describes a lazily computed APL. Does anyone know whether further progress was made in that direction? github.com/JohnEarnest/ok/blob/gh-pages/docs/…
Arbitrary item access order sounds tricky with respect to cache efficiency. You'd also have to adapt the data layout on disk in response to the types of queries you run on it
@Adám Ah, thanks! I watched Marshall's full talk and loved it, but it slipped my mind this afternoon. Sounds like a different (complementary?) approach to the problem.
By the way - with Excel getting dynamic arrays now and maybe nested arrays soon, a lot more APL-like functions are likely to appear in it... it's soon getting iota (range), filter, unique (distinct) - and apparently more are coming. microsoft.com/en-us/research/blog/…
I've thought for a while that Excel users could learn a lot from the APL community
$ could be the name of the entire matrix, so $[2 3;4;5] would be the same as D2:E3. You should also be able to "dot" into a specific sheet, so "Sheet2"[1;2] would be Sheet2's B2.
@chrispsn Thanks for the link. Very interesting stuff. I do wonder though at how much they can pile on after powerpivot, DAX etc, and still have a coherent product.
Or anyone else here who has thoughts on the subject
I'm currently trying to import and use a library written in C, but unfortunately there is lots of global state strewn about hither and thither. lots of #ifdefs
I might import function f, and inside of f is some reference to global state. If I were writing in C, simply importing the correct header I could say
MyGlobalVar = 'whatever';
but since all I can do with quadna is import a function, I can't say myVar←'whatever' because my function f from the C library doesn't see that variable
aside from dramatic overhauling of this library by redefining all functions to take a global state parameter, what options do I have?
are there alternatives to quadna that would be more suitable for such a conversion?
and I would like to avoid some kind of zombied apl interpreter inside C or something else like that at all costs