On Tue, May 19, 2009 at 5:01 AM, Don Watson <[email protected]> wrote: > ... the outer parentheses > cause J to treat all contents between these parentheses as a train of > forks and hooks instead of right to left J code. To compensate, we need > "@:" and "[:" conjunctions. > > ([: %: +/@:*:@:(- +/ % #) % <:@#) 2 4 9 6 > 2.98608 > > The parentheses around the whole expression do two things: > > 1) They define the where the argument for the tacit expression (- +/ % #) > is to be found. > 2) They define the content within the parentheses to be a train of forks > and hooks. >
Hi, Don. What you have here called two things are actually one and the same thing. A tacit expression is one in which no parameters are explicit. When parentheses are needed to isolate an expression from something that would otherwise be parsed as a parameter, they therefore also delimit where an argument may be found. Your understanding of the differences between explicit and tacit phrasing is clearly advancing. I share your wish that J were easier to learn than it is, but I don't share your confidence that what it has to offer can be made more approachable by changing syntax. In my view, J syntax is so simple that it can't be bent without breaking. The opportunity I see is in finding creative ways to communicate J so that learning it can be easier. Changes that are as deep as you're proposing produce problems of language design, which are much harder still. Tracy ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
