Thank you. Confirmed working with the original test cases. Pushing a bit further, I believe that the following behavior may still be contrary to the IBM spec in SVN 268:
+¨'' ┌⊖┐ │0│ └─┘ Here we have a numeric function passed an empty character. Transforming this via the identity given previously, we get the equivalent expression: (⍴'')⍴⊂+↑'' DOMAIN ERROR (⍴'')⍴⊂+↑'' ^^ (I don't know whether there's a corresponding case for ⍬. Is there a primitive monadic function that only accepts character arguments?) On Thu, 2014-05-15 at 12:22 +0200, Juergen Sauermann wrote: > Hi, > > thanks, hopefully fixed in SVN 268. Also the debug printouts. > > /// Jürgen > > > On 05/14/2014 07:01 PM, David B. Lamkins wrote: > > I think Elias is correct. > > > > >From the IBM manual, pg. 110 (check the source; I think I've transcribed > > accurately, but make no guarantee): > > > > -- begin > > Empty Argument: If R is empty, the function LO is not applied. Instead, > > a related function called the fill function of LO is applied with > > argument ↑R (the prototype of R). This result is used as a prototype of > > the empty array of ρR . > > > > The identity is: > > LO¨ ̈R ←→ (ρR)ρ⊂fill fn ↑R > > > > where: > > LO Is any function for which a fill function is defined > > fill fn Is its related fill function > > -- end > > > > That'd mean: > > > > +¨⍬ ←→ ⍬ > > ,¨'' ←→ '' > > > > Also, in the case where a function is a defined function, its fill > > function is the identity function. Therefore {⍵}¨'' and {⍵}¨⍬ should > > behave according to these identities: > > > > (⍴'')⍴⊂{⍵}↑'' > > ┌⊖┐ > > │ │ > > └─┘ > > (⍴⍬)⍴⊂{⍵}↑⍬ > > ┌⊖┐ > > │0│ > > └─┘ > > > > On Thu, 2014-05-15 at 00:14 +0800, Elias Mårtenson wrote: > >> I tested this, and I'm wondering if the return value should really be > >> 0? Wouldn't it make more sense to return ⍬? > >> > >> > >> Regards, > >> Elias > >> > >> > >> > >