On Mon, Dec 3, 2018 at 6:49 PM Jose Mario Quintana <[email protected]> wrote: > > Ok, I now see what you are saying. > > > > And, I've updated the rosettacode explicit implementation of the > combinator. > > > > Thanks, > > You are welcome. > > I also added my non-tacit version(s) of the Y combinator there. > > I would suggest for the explicit version to leave only the form, > > Y=:2 :0(0 :0) > NB. this block will be n in the second part > : > g=. x&(x`:6) > (5!:1<'g') u y > ) > f=. u (1 :n) > (5!:1<'f') f y > ) > > and forget about Defer; otherwise, Defer could be regarded as a "free > variable" and Y would no longer be considered to be a combinator (actually, > that was my original point).
I think that that approach would detract from the exposition, and make i even more difficult for relative newcomers to J to digest (a bulk of the rosettacode audience are not J veterans - even if we limit our scope to people with an interest in J). Also, as far as I know, there's nothing in the definition of "combinator" which states that they cannot be built out of other "combinators". (Is there something I've overlooked here?) But even if there was, at most this would require a relabelling of the definition which depends on Defer. Remember that the primary point of the rosettacode site is to communicate with people - to convey how ideas represented in one programming language carry over to other programming languages. Thanks, -- Raul ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
