Henry wrote: > And I would love to see f"g x<-> f"(g x) x .
Does anybody object to this change? What is its likelihood of implementation? Anyone interested in this topic might want to read through the comments and opinions at http://www.jsoftware.com/jwiki/DanBron/Temp/rank%20redefinition . In particular, they reminded me that often in f"(g y) or f"(x g y), g doesn't care about x and y specifically; more often it just cares about their shapes, and even more often just their ranks. It also often cares about u's rank (u b. 0). Of course, x g y is more general than x g&#&$ y and the former is easily be translated to the latter (exactly with that phrase), whereas the reverse is not possible; but that said, we must consider if 99% of cases will be spelled f"(g&#&$), whether it may not be notationally preferable to define it that way in the first place. In re: access to u b. 0 , obviously g cannot take 3 arguments (x, y, and u b.0) so maybe what's needed is some motivating examples. Those would help us to justify the (breaking) change and to identify the best new definition. Who's got some (search your code for "( ) ? Henry? Another route to consider is f"G with G a gerund, a la G} and ^:G . That would be a backwards-compatible change and might give us some leeway to accommodate 3 arguments? -Dan Please excuse typos; composed on a handheld device. -----Original Message----- From: Henry Rich <[email protected]> Sender: [email protected] Date: Wed, 10 Nov 2010 17:11:44 To: Programming forum<[email protected]> Reply-To: Programming forum <[email protected]> Subject: Re: [Jprogramming] Atop u...@v with v of negative monadic rank Agreed that negative rank must not change. And I would love to see f"g x<-> f"(g x) x . I have wished for that a couple of times, though I don't remember why now. Even though I use f"g in a couple of places, I would welcome the change. I could always do f"(g b. 0), right? Henry Rich On 11/10/2010 4:26 PM, Roger Hui wrote: > On the other hand, one could look at the current definition > of f"g as some sort of mistake (and the infrequency of > its use is an indication of that), and a different meaning > might have been more useful. e.g. f"g x<-> f"(g x) x > > Anyway, even given the current definition of f"g, I don't > think there is a case for changing anything. You want > f"f to be the same as f, but what if a rank of f is negative? > Or even the noun case:<"r is not necessarily the same > as<"r"r if r is negative. > > > > ----- Original Message ----- > From: Dan Bron<[email protected]> > Date: Wednesday, November 10, 2010 11:19 > Subject: Re: [Jprogramming] Atop u...@v with v of negative monadic rank > To: J Programming<[email protected]> > >> Yes, or you might have an expression like 3 2 0 p. x which >> relies on the definition of x+0 without explicitly >> stating it, or without the author of the expression even knowing >> it (see Ambrus' comments later in this thread). >> >> In other words, you need identities to make algebra >> reliable. In other words, edge cases are the bane of >> formalisms (and one of the joys of J is that so very often it >> handles them elegantly and transparently. This feature is >> mostly derived from the thoughtful and sometimes seemingly >> prophetic definitions of its words). In other words, the >> more guarantees J makes, the less I have to worry (including >> worrying about whether I should be worrying, as you& Roger are >> doing). >> Anyway, if you're looking for an analog to x+y , then think >> about modifiers like "f (or 1 :'u"f' or whatever) >> which one would like to "work" without worrying about the value >> of the argument (even if sometimes it's exactly f). Yes, >> abstractions over verbs are rarer than abstractions over nouns >> (and J's grammar encourages this, viz Lisp), but they are not >> insignificant, and I personally make great use of them [1]. >> >> Bear in mind, I am not arguing for or against Ambrus' proposal >> (which I still haven't had time to study). I am only >> pointing out 'who needs f"f ?' is not an argument against it and >> is invidious logic. >> >> It is obvious that f -: f"f should be a tautology ("f is the >> same as f with the rank of f"); we can choose to sacrifice this >> self-consistency for some benefit, but we should do so >> consciously and for good reasons (not because we can't think of >> uses for self-consistency). >> >> -Dan >> >> >> [1] We all know modifiers are one of J's strengths - we have >> +/ */ and ^/ where math has big-sigma, big-pi and big-nada >> respectively. >> >> >> Please excuse typos; composed on a handheld device. >> >> -----Original Message----- >> From: Raul Miller<[email protected]> >> Sender: [email protected] >> Date: Wed, 10 Nov 2010 12:57:58 >> To: Programming forum<[email protected]> >> Reply-To: Programming forum<[email protected]> >> Subject: Re: [Jprogramming] Atop u...@v with v of negative monadic rank >> >> On Wed, Nov 10, 2010 at 10:29 AM, Dan Bron<[email protected]> wrote: >>> Why would you ever say x+0 or y*1 ? >> >> I am not sure that I do? >> >> But I might say x+y where y was 1 0 1. > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
