« first day (2535 days earlier)      last day (126 days later) » 

4:28 AM
I've been thinking about this exact thing recently. I suppose it's because doesn't produce scalars or unsorted vectors?
It'd certainly be more convenient if ⍸⍣¯1 was more lenient - I've found myself writing ⍸⍣¯1{⍵[⍋⍵]} a couple of times. But maybe that'd make it less correct theoretically?
 
4:46 AM
As in, if a function doesn't even produce a certain output, then no input leads to that output.
 
 
1 hour later…
6:12 AM
@RubenVerg @rabbitgrowth Right. (F⍣¯1)r asks "What argument y can be given to F such that it yields the result r?" Anyway, often, what you really want is (⍴y)↑(⍸⍣¯1)r on a Boolean argument, and then you can just write (⍳⍴y)∊r. And if you really want the result to have variable length: (⍳⌈/r)∊r. For this reason, I've been considering monadic as "Whence", defined as {⍸⍣¯1{⍵[⍋⍵]},⍵}
 
 
4 hours later…
10:31 AM
Nice name :)
Why the ravel?
 
10:51 AM
@rabbitgrowth That takes care of handling a scalar as a 1-element vector, but also allows any shape collection of indices.
Maybe it should only be 1/⍵ and not ,⍵ to avoid future problems like that of .
 
 
3 hours later…
1:52 PM
@Adám no more Type?
 
Sure, I've only been considering as it is such a good fit. imo, (or ) is not a particularly good fit for Type.
 
NARS2000 does monadic antibase, iirc, do you already repurpose that for something else?
 
Maybe monadic = could work for type. I currently have it in mind for a Rank function (≢⍴) but that function is pretty trivial, though = is nice considering Depth being .
@RubenVerg Yeah, is really not related other than resembling a T for Type, and I'd rather use monadic for 2⊥⍣¯1
 
well, Type isn't really related to anything, is it?
maybe to one of the prototype-overfilling functions?
@Adám why specifically binary and not, say, base 10?
 
Binary is much more common, and it was indeed the meaning of monadic that Iverson originally had. I don't know why it wasn't carried over to APL\360.
 
2:05 PM
crazy idea, but how about a Retype function that casts between types?
 
They don't map to each other.
From char to num is ⎕UCS, but most numbers have no character equivalent. And how do you map from ⎕NULL to number or character? just 0 and ⎕UCS 0?
(Also, I can't imagine a use case.)
 
from num to char would also be Unicode, I suppose
yeah ok there's no usecase tbf
 
I guess re-basing an instance on another base class could be… interesting.
 
am I going crazy? I was sure Unicode had a rho-underbar symbol
(the idea comes from using rho-underbar for Type and Retype akin to Shape and Reshape, which I guess might be conceptually kinda similar)
 
It does: ϼ
I'd rather not add any more glyphs after and though.
 
2:10 PM
@Adám ahh, it's not an APL glyph, i see
searched for apl functional symbol rho underbar and got no results
 
Maybe Type isn't as necessary either, as, like Rank, it is fairly simple: ⊃0⍴⊂
However, I was thinking that a Type primitive could be a bit more lenient about objects than that.
 
I don't think that simple functions shouldn't be added, especially now with trains
or maybe that's just me wanting to avoid parens at all costs :)
@Adám wdym?
 
Right, being trivially expressable in terms of other primitives is not a good criteria for exclusion. E.g. who needs + when we have -∘-
@RubenVerg It currently NONCE ERRORs on all objects except instances of classes that have a niladic constructor. I was thinking that namespaces and classes could be their own types.
 
@Adám who needs - when we have ⍟⍤÷⍥*
@Adám does that mean the prototype elements of class instances are their class' niladic constructor?
 
@RubenVerg Exactly.
@RubenVerg No, the prototype elements of class instances are new instances of the parent class, using the niladic constructor.
 
2:17 PM
yeah sorry that's what i meant
 
Try it online! (updated to better version)
 
 
1 hour later…
3:25 PM
Announcement: BAA Vector Webinar in half an hour ft. Ed Gottsman's J Viewer Demonstration — see britishaplassociation.org/webinar-schedule-2024
 

« first day (2535 days earlier)      last day (126 days later) »