> Nonce error -: unimplemented You know what's fun about J? Algebraic manipulation of programs. Even when the interpreter can't (yet) do it, you can still do it in your head.
For example, with: f =: ^...@-@*: NB. the function finv =: f^:_1 NB. f's inverse integrand =: o. @ *: @ finv You immediately see that integrand is nothing more than o...@-@^. aka 1p1 * -...@^. (though I prefer the latter notation - I find o. a bit obscurant when it only means 1p1&* ). Therefore, the indefinite integral is 1p1 * ] - ] * ^. or 1p1 * (- (* ^.)) or o.@(- (* ^.)) or however you want to phrase it. In case it's not clear, working right-to-left in integrand, we have f^:_1 where f is a composition (pipeline) of several functions, and therefore its inverse is the composition of the inverses of those functions, in reverse order. So ^...@-@*: becomes (*:^:_1)@(-^:_1)@:(^:_1) which of course is %:@-...@^. . Then, we see the ultimate %: in finv is immediately cancelled by the subsequent *: in integrand, so we remove both of them, leaving o...@-@^. Then we integrate mentally (or cheat & use the web, or cheat & integrate the components individually with d._1 and then recompose manually). > PS. How do we Punctuate sentences containing j? To embed J in English sentences, I just pad the J with sufficient space to make it unambiguously and avoid syntactic problems (e.g. between the J and a sentence-ending period). Tracy Harms advanced the idea of wrapping all J expressions in parens, which cleanly separates them from the prose, yet perfectly maintains their semantics (unfortunately, I use so many parens already that using them also for J just gets messy). Others use other methods. > I've not yet used u"v . I'd prefer effort in calculus algorithms. First: yes, you have used u"v . It is impossible to use J without using u"v , even if you don't know it. In terms of HR allocation, I prefer extending (exploring) concepts unique to J, rather than using J to reiterate concepts well-established in other fields. Especially intrinsic, powerful concepts like " . For calculus particularly, I think extensions can better be done in user space - it wouldn't be hard to rewrite d. and D. (see algebraic manipulation example above), and since calculus is a wide field with diverse applications, it would take a lot more HR allocation to "complete" (or at least make practical) d. and D. than extending " . In other words, extending " would give us more bang for the buck. That said: (a) it's not my buck, nor my HR to allocate and (b) I don't use J for "real work", so my bias is towards the theoretical, whereas yours might be more pragmatic. In either case, I suspect Roger's just going to follow Ken's advice to Arthur anyway: http://keiapl.info/anec/#listen -Dan ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
