Re: named-argument uniterms [was: regrets telecon on Tuesday]

Michael Kifer wrote:
> 
>    SystemA                       RIF                              SystemB
>    p(foo->2,bar->"abc") ----> p(foo(2),bar("abc")) -----> p(foo(2),bar("abc"))

During a private conversation, someone suggetsed that conformant 
translators from systems using named arguments Uniterm to RIF could be 
required to order the slots (e.g. lexicographically, but any convention 
would do).

That way, named argument Uniterms would be passed around as standard 
Uniterms, without ambiguity and without impacting systems that do not 
use named arguments uniterms. And the (ordered) list of the slot names 
(or TERMs representing them) could be passed as meta data (or whatever 
we call information that can be ignored but that must be preserved and 
passed along), so that consumer systems that use named argument uniterms 
would be able to reconstruct the slotted form (and others would just 
ignore it):

SystemA				RIF			SystemB
p(foo->2,bar->"abc") ---> p[bar,foo]("abc", 2) ---> p(bar->"abc",foo->2)
                                               |
                                               |         SystemC
                                                ----->  p("abc",2)

The burden would be on the implemenors of tranlators from systems with 
slotted uniterms to RIF, of course. But (i) the burden is "only" to 
order the slots, and (ii) they seem to be a minority (that is, the 
majority of implementors would not be impacted).

Would that work?

Christian

Received on Tuesday, 29 January 2008 10:02:21 UTC