Raul wrote: > This? > > v 'J double-entrende’ That’s neat, but I prefer the “sneakiest” solution I can find.
Put another way: the most implicit expression, where the notation does most of the work for me, and I provide the smallest number of possible explicit instructions; the new conjunction you introduced in this message can be used for some really cute expressions, but they’re detected easily. Or maybe “detected easily” is framing it the wrong way. It’s more like I prefer *not having to say it at all*. For a long while, I took this philosophy to the extreme, and used what I called the “fish hook”, where I’d write (f~ g)~ (see the two fins?) instead of (g@[ f ]) just to avoid using the primitives [ and ], which felt too much like explicit arguments to me. I preferred, at the time, for the arguments simply to “fall into the right place”, automatically. Kinda like when you’d do some stupid trick as a kid and shout “Look ma, no hands!”. This isn’t exactly declarative programming, per se, but it shares some of the same motivations that stimulated that practice as a separate discipline from imperative programming. I’ve made the analogy to place-value notation for numbers as opposed to prior notations (e.g. Roman numerals) before, and I think it’s apt. That said, it’s possible to take things too far, in the sense that ultimately the costs outweigh the (relevant) benefits, and I’ve been guilty of that as well. Anyway, another hint towards what I was talking about: http://www.jsoftware.com/pipermail/general/2004-April/017052.html <http://www.jsoftware.com/pipermail/general/2004-April/017052.html> I guess I’ll take your original and see if I can re-phrase it along these lines. -Dan ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
