On Fri, Jul 20, 2012 at 11:45 PM, Ian Clark <[email protected]> wrote: > To take an example for the benefit of pragmatists trying to follow > this thread, I'm not asking for a whole BNF grammar but a simple > pragmatic set of transformation rules to convert, say: > 4 : 'x (a b c d) y' > into, say: > 4 : 'x a ((b y) c (d y))' > which I loosely called "multiplying out".
If I were attempting this, I think I would start with atomic representation (5!:1 instead of 5!:6). In the context of 5!:1 I would look for lists whose first elements were <,'3' (second element of the list contains 3 atomic representations which are combined in a fork) and whose first elements were <,'2' (second element of the list contains 2 atomic representations which are combined in a hook). I think I would also be providing both monadic and dyadic definitions (keeping in mind that hooks and forks sometimes constrain the context for contained verbs. For example, the first verb in a hook is always used dyadically and the second verb is always used monadically. But note that there are cases which present themselves here which deserve some thought. Consider, for example: (+/%#)@(,&1"1) i. 3 4 If we eliminate the noun, and try to explain the verb, what would you want to see here? Thanks, -- Raul ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
