- From: Michael Kifer <kifer@cs.sunysb.edu>
- Date: Wed, 23 Jan 2008 02:39:26 -0500
- To: Igor Mozetic <igor.mozetic@ijs.si>
- Cc: public-rif-wg@w3.org
> > After recent email interchanges I realized that named-arg uniterms bring > very little (just possible args reordering, but one has to list them all). > The only argument in favor of keeping them thus remains to have BLD general > (and define various useful profiles). > For my taste the little gain doesn't justify complications, therefore > I am reversing my straw poll vote: I'm in favor of not including them in > BLD but will not object to have them. > > Regards, > Igor I think this debate is loosing sight of what we are trying to accomplish. Here are some points to clarify things. 1. Positional notation, frames, and named arguments are three equivalent notations. One can encode the other two, and there is no gain in the expressivity. BUT 2. We are not designing a minimalist language, but an *interchange format*. The goal is to be able to send rules like this: SystemA ----> RIF ----> SystemB Suppose that both systems support named arguments and want to communicate through RIF, but RIF does not support named arguments. In that case, the two systems would have to encode named args as follows (there are several ways - I just picked up one): SystemA RIF SystemB p(foo->2,bar->"abc") ----> p(foo(2),bar("abc")) -----> p(foo(2),bar("abc")) The big trouble is that if SystemA & SystemB also support positional predicates then p(foo(2),bar("abc")) is also a valid formula in both of those systems. So: p(foo(2),bar("abc")) ----> p(foo(2),bar("abc")) -----> p(foo(2),bar("abc")) What happened is that two distinct formulas are now mapped into the same thing and no exchange is possible. At least, not in a natural way. --michael
Received on Wednesday, 23 January 2008 07:39:47 UTC