- From: Michael Kifer <kifer@cs.sunysb.edu>
- Date: Sat, 21 Feb 2009 22:17:25 -0500
- To: Sandro Hawke <sandro@w3.org>
- Cc: public-rif-wg@w3.org
Good progress. Sorry I could not attend the telecon.
But I do have a number of comments, below.
michael
On Fri, 20 Feb 2009 13:21:42 -0500
Sandro Hawke <sandro@w3.org> wrote:
>
> IRC log: http://www.w3.org/2009/02/20-rif-irc
> Present: Harold, Chris, Sandro
> Agenda: http://lists.w3.org/Archives/Public/public-rif-wg/2009Feb/0113
>
> (Here's what I think we agreed. Chris and Harold, correct as desired.)
>
> Conclusions on presentation syntax issues:
>
> -- We agreed that "pd" in the metadata of example 4 of BLD was an
> error and should be "_pd" or "pd"^^<rif:local>
>
> At some point we might allow a declaration ("local(pd)") which
> would allow one to use "pd" like that.
>
> -- We agreed to add separators to the syntax, making it more like
> other languages with infix operators, so that:
> Group(p(a b (c+d) e(c+d) f (c+d)) q(a))
> would instead be written something like:
> Group(p(a, b, c+d, e(c+d), f, c+d); q(a))
>
> This will alas require transforming all existing test cases and
> examples; Sandro will investigate automating that transforming,
> or simply saying those are written in a different PS.
>
> (I'm not really happy about this, but have no better idea.)
>
> -- We agreed that CURIES and bare IRIs which do not contain
> delimiters (but do contain operators) could be allowed. As a
> consequence, infix operators like "-" and "+" will have to be
> surrounded by whitespace.
> f(my:max-width - 12) has a subtraction
> f(my:max-width-12) has no subtraction
> f(4-12) is disallowed, to keep people using spaces
>
> (I'm not really happy about this, but have no better idea.)
>
> -- String literals can have escapes (like \") as in turtle
> http://www.w3.org/TeamSubmission/turtle/#sec-strings
> (except the \>, which isn't needed since in RIF you can always
> use rif:iri instead of <foo:bar>)
>
> -- We'll allow C++ syntax comments as a shortcut
> for (* _some_new_term[rdfs:comment->"...stuff..." *)
> if Sandro can come up with a decent way to parse & attach them
> (Actually we said comments starting with "#", but in typing this
> I realized that conflicts with InstanceOf)
>
> Actually does it need to be
> (* _some_new_term _some_new_term[rdfs:comment->"...stuff..." *)
> ? I can't tell from the spec.
I don't really understand how you are planning to do that without requiring
some kind of structure in those C++ comments.
>
> -- Regarding literals like 123.456, we'll require a suffix to tell us
> which datatype to use:
> 123.456d ==> "123.456"^^<xs:decimal>
> 123.456e ==> "123.456"^^<xs:double> (as in Java/C)
> 123.456f ==> "123.456"^^<xs:float> (as in Java/C)
> (123.456e+02 and 123.456f+02 are double and float, as usual)
>
> -- We'll allow formulas as terms in the general grammar
> eg: p(1, 2, (p(1) :- q(2)), 3)
> since some dialects might use them
This is allowed in FLD, yes. The formula is treated as being reified.
> -- Responding to Chris's strong dislike of "->" as very confusing in
> a logic language, we finally settled on "::" to replace it in NAU
> and frames.
> eg: p(b :: 1, bb :: f[my:color :: your:red])
I can't imagine anything uglier than this particular choice.
> Conclusions on other issues:
>
> -- It would be nice to anonymous frames. In PS, the syntax could be
> _[attr->value] (or _[attr :: value])
There is more to anonymous frames than that. What is needed is a general syntax
for skolem functions/constants. The anonymous frame is just a special case of
that. In FLORA-2, there are two kinds of symbols for Skolem symbols: _# and
_#<number> (ie, _#1, _#2, etc.). This allows skolems to be cross-referenced
within the same formula (eg., when you skolemize an existential var, which
occurs in several places in the same formula).
> -- It would be nice to have nested frames, and more generally frames
> in terms. Can we please add them back? They're just syntactic
> sugar (unless you have anonymous frames).
In FLD, a nested formula is not syntactic sugar. It is a reified formula.
To distinguish syntactic sugar from reification, some syntax is needed.
For instance, a[b->{c[d->e]}].
Received on Sunday, 22 February 2009 03:18:03 UTC