@Marshall that mess of a file would definitely benefit of some functionaly stuff
(i'm kind of afraid of making "vanity" functions due to java's inlining possibly checking whether the bytecode size is under 35, and i'm too lazy to check if that's the case)
@Marshall getting the types right once is probably easier than getting them right multiple times, each in a slightly different context
@dzaima (speaking of which, setting max inline size to 1000 doesn't seem to change things. either way, probably way too unimportant for what's being done otherwise)
@Moonchild ,/ on a vector always returns a scalar (as / always decrements the rank by 1)
(you just usually don't see it as in e.g. +/1 2 3 the resulting 6 is equal to ⊂6, but it does happen)
(in dzaima/APL i special-cased/ on vectors even though it's very bad in the general case; in BQN ´ works only on vectors, so it can freely choose to be sane)
in other news, my apl implementation is coming along swimmingly; all scalar functions supported, good number of structural functions, and various other misc functions and operators (along with an apparently broken /)
@dzaima so can you not do the equivalent of +/3 3⍴5? (Or there is different syntax for that?)
incidentally, re 'subtraction, division, and span are backwards [...] not really fixable; too much precedent' I think you could definitely fix that. Left-associative and residue are already backwards from the norm, so there's (heh) a precedent. It would also help with the problem of modified assignment
@Moonchild it'd probably be very jarring that 10-1 is ¯9 anyways. | can get away with being reversed due to it not being that present in other forms, but -?
(¬ could definitely do with its args being swapped, but that breaks the beautiful fact that both the monadic and dyadic forms are (1+-))
I think that's just the end of the story: no one would use it. I could also write numbers in little endian order, which is better for many reasons, but it will completely prevent anyone from wanting to learn the language.
@dzaima I heard someone say that the only reason apl goes rtl is so you don't have to write 5+6→a. I suppose it could be special-cased (even more than it already is), but it is still a valid reason to prefer rtl
@Moonchild yeah, ← vs → is one of my main reasons to prefer RTL too. in that dzaima/APL branch i just went with 2+2→a since i wasn't going to use it anyways
@dzaima there is that. But I also feel it encourages thinking in a top-down way. Not on the level of whole programs, obviously, but in individual expressions
@Adám maybe; also for this particular function I started by developing it as a dfn independent of these namespaces so maybe in the end I just copied the dfn into the namespace and didn't test it again
@RGS "alphabetical" would be the more common word, but the article you linked to clearly states that both are correct.
Heh, why is , called catenate and not concatenate as in newer languages? While I don't know for sure, catenate might have been the more common term during Iverson's formative years.
@Moonchild True, that's why I said "might". However, it is clear that catenate was no worse than concatenate which only became the term shortly after that.