The last time I worked on my component-file code was circa SVN 220. At
the time, I was using a defined operator that took a constant function
as its right function. Something akin to this, where g would always be a
constant function, e.g. {1}:

∇z←l (f foo g) r
 z←(r f l) (l g r)
∇

At the time, I could call this operator as:

      1 {⍺ ⍵} foo {3} 2
 2 1  1 3 2

(The above isn't exactly what I was doing... I was using the constant
value by itself. That used to work. This is just illustrative of what I
think that call ought to do, but doesn't in the current build.)

Interestingly, I can still use a constant function on the left of the
operator:

      1 {3} foo {⍺ ⍵} 2
 2 3 1  1 2 

When I try to put a constant function to the right of the operator, this
is what happens:

      1 {⍺ ⍵} foo {3} 2
VALUE ERROR
      1 λ2 foo λ1 2
        ^

Are my expectations out of line, or is this a bug?



Reply via email to