IRC log of rif on 2009-02-20

Timestamps are in UTC.

15:59:41 [RRSAgent]
RRSAgent has joined #rif
15:59:41 [RRSAgent]
logging to http://www.w3.org/2009/02/20-rif-irc
16:00:43 [Zakim]
Team_(rif)15:49Z has now started
16:00:45 [Zakim]
+[NRCC]
16:00:54 [ChrisW]
ChrisW has joined #rif
16:01:11 [ChrisW]
zakim, what is the code?
16:01:11 [Zakim]
the conference code is 7431 (tel:+1.617.761.6200 tel:+33.4.89.06.34.99 tel:+44.117.370.6152), ChrisW
16:01:13 [Harold]
zakim, [NRCC] is me
16:01:13 [Zakim]
+Harold; got it
16:01:16 [ChrisW]
brt
16:01:34 [Zakim]
+Sandro
16:01:36 [Zakim]
-Sandro
16:01:36 [Zakim]
+Sandro
16:02:58 [sandro]
http://www.w3.org/People/Sandro/webcam
16:03:46 [ChrisW]
havin gphone probs today
16:05:02 [Zakim]
+ChrisW
16:05:15 [ChrisW]
zakim, who is here?
16:05:15 [Zakim]
On the phone I see Harold, Sandro, ChrisW
16:05:16 [Zakim]
On IRC I see ChrisW, RRSAgent, Harold, MoZ, sandro, trackbot, Zakim
16:06:51 [ChrisW]
BAREWORDS: a "c identifier"
16:09:53 [sandro]
(* "http://sample.org"^^rif:iri pd[dc:publisher -> "http://www.w3.org/"^^rif:iri
16:10:08 [sandro]
(* "http://sample.org"^^rif:iri _pd[dc:publisher -> "http://www.w3.org/"^^rif:iri
16:10:50 [sandro]
Harold: yeah, I agree, I think the draft has a syntax error, and it should be "_pd" or anonymous
16:11:07 [sandro]
_[ foo->bar ]
16:11:43 [sandro]
standalone "_" for anonymous terms, useful for frames.
16:14:29 [sandro]
Addon: local declaration so you don't need _
16:14:39 [sandro]
addon: don't need ? when you quantify a variable.
16:17:27 [sandro]
p(a b (c+d) e(c+d) f (c+d)) q(a b)
16:17:39 [sandro]
p(a, b, (c+d), e(c+d), f, (c+d)); q(a b)
16:17:43 [sandro]
p(a, b, (c+d), e(c+d), f, (c+d)); q(a, b)
16:17:57 [sandro]
p(a, b, (c+d), e(c+d), f, (c+d)). q(a, b).
16:18:27 [sandro]
separators vs space-sensitive
16:21:47 [sandro]
Harold: I would not be opposed to introducing separators, making it more prolog-like
16:22:30 [sandro]
Harold: I prefer separators to paying attention to whitespace before lparen.
16:23:37 [Harold]
f (c+d) should not mean f +(c d)
16:25:25 [ChrisW]
_f(_c+_d)
16:25:38 [ChrisW]
_f(_c+ _d)
16:26:33 [sandro]
_f(my:foo+my:bar)
16:27:13 [sandro]
_f(my:foo + my:bar)
16:27:45 [sandro]
Option 1: tell people to use lots of whitespace
16:28:09 [sandro]
Option 2: restrict the characters in QNAMES/CURIES/URIS -- tell people to to use <...> when necessary
16:28:49 [Harold]
Prefix(cpt http://example.com/concepts#)
16:30:13 [Harold]
_f(17-12)
16:30:51 [ChrisW]
_f(_17-12)
16:30:53 [sandro]
General-sense: Option 1
16:31:34 [sandro]
_f(_17-12) has no subtraction in it.
16:31:57 [ChrisW]
' + '
16:32:21 [Harold]
_f(?XX-12)
16:32:47 [sandro]
when it's ambiguous we assume it's it an identifier? VS Always require space.....
16:33:28 [Harold]
_f(?XX - 12)
16:33:37 [sandro]
sense: require space always, because otherwise it's too easy to get it wrong.
16:33:54 [sandro]
sense: require space around infix operators always, because otherwise it's too easy to get it wrong.
16:34:28 [sandro]
"foo \" bar"
16:34:41 [sandro]
"foo \u0034 bar"
16:34:56 [sandro]
# foo
16:35:05 [sandro]
/* foo */
16:36:12 [sandro]
(* _some_new_foo[dc:comment->"My Comment"] *)
16:36:18 [sandro]
#My Comment
16:37:29 [Harold]
We suggest to use Dublin Core, RDFS, and OWL properties for metadata, along the lines of Section 7.1 of [OWL-Reference]-- specifically owl:versionInfo, rdfs:label, rdfs:comment, rdfs:seeAlso, rdfs:isDefinedBy, dc:creator, dc:description, dc:date, and foaf:maker.
16:38:14 [sandro]
p(a,b) :-
16:38:14 [sandro]
q(a) # not really
16:38:53 [sandro]
p(a,b) :-
16:38:53 [sandro]
q(a, b, # is this about b? or c?
16:38:53 [sandro]
c)
16:39:41 [sandro]
problems -- you have to invent object identifiers (could us "_")
16:40:07 [Harold]
http://www.w3.org/2005/rules/wiki/BLD#RIF-BLD_Annotations_in_the_Presentation_Syntax
16:40:31 [sandro]
(* ... *) a+b the meta is about a
16:40:59 [ChrisW]
( (* comment *) FORALL p :- b )
16:41:26 [sandro]
chris: I don't like comments that just go away in processing. so comments should be metadata.
16:42:54 [ChrisW]
(
16:42:57 [ChrisW]
#comment
16:43:01 [ChrisW]
forall ...
16:43:02 [ChrisW]
)
16:43:17 [sandro]
# comment about rule
16:43:17 [sandro]
p(a,b) :- # comment about p(a,b)
16:43:17 [sandro]
q(a, b, # comment about b
16:43:17 [sandro]
c) # comment about q(a,b,c)
16:44:07 [sandro]
#-comments are syntactic sugar for dc:comment metadata
16:44:22 [sandro]
on an anonymous local comment
16:44:24 [sandro]
rdfs:comment
16:45:22 [sandro]
12.34
16:45:52 [ChrisW]
1.23
16:46:11 [sandro]
1.23e+00
16:46:50 [sandro]
xsd:double — IEEE 64-bit floating-point
16:47:33 [sandro]
Valid values include: 123.456, +1234.456, -1.2344e56, -.45E-6, INF, -INF, or NaN. according to http://books.xmlschemata.org/relaxng/ch19-77065.html
16:48:03 [sandro]
123.456 could also be a decimal.
16:48:13 [sandro]
-1.2344e56 could also be a float
16:48:57 [sandro]
chris: 1.23 is a decimal. 1.23e is a double. for float using ^^
16:49:05 [sandro]
okay.
16:49:39 [sandro]
12.3d for decimal?
16:51:23 [sandro]
sandro: throw an error for 12.3 saying it's ambiguous.
16:51:54 [ChrisW]
double values have a lexical representation consisting of a mantissa followed, optionally, by the character "E" or "e", followed by an exponent. The exponent ·must· be an integer. The mantissa must be a decimal number. The representations for exponent and mantissa must follow the lexical rules for integer and decimal. If the "E" or "e" and the following exponent are omitted, an exponent value of 0 is assumed.
16:52:51 [ChrisW]
The canonical representation for double is defined by prohibiting certain options from the Lexical representation (§3.2.5.1). Specifically, the exponent must be indicated by "E". Leading zeroes and the preceding optional "+" sign are prohibited in the exponent. If the exponent is zero, it must be indicated by "E0". For the mantissa, the preceding optional "+" sign is prohibited and the decimal point is required. Leading and trailing zeroes are prohibited subject
16:54:32 [sandro]
sandro: require trailing d,e,f (but look elsewhere for ideas, too.)
16:55:20 [Harold]
(Sandro's 3-letter subalphabet)
16:55:20 [sandro]
p(b=1)
16:55:46 [sandro]
p(b < 1)
16:57:30 [sandro]
NAU syntax....?
16:57:35 [sandro]
p(b->1)
16:57:40 [sandro]
p(b::1)
16:57:44 [sandro]
p(b :: 1)
16:57:45 [sandro]
p(b : 1)
16:57:49 [sandro]
p(b := 1)
16:58:10 [sandro]
p(b -> 1, c->c)
16:58:18 [sandro]
p(b -> 1, c -> c)
16:59:06 [sandro]
p{ b: 1}
16:59:38 [sandro]
should NAU use the same operator as frames?
16:59:47 [sandro]
chris: no no no!
17:00:19 [sandro]
chris: eliminate arrow. (use only for implication)
17:01:00 [sandro]
p(b := 1, f[ color :: red ])
17:01:15 [sandro]
p(b := 1, bb := f[ color :: red ])
17:01:26 [sandro]
chris: that would be fine.
17:01:46 [sandro]
chris: lisp used a parens pair.
17:02:10 [sandro]
p( (b 1) (bb f[ color :: red ]) )
17:02:29 [Harold]
':=' looks too much like re-assignment.
17:03:15 [Harold]
b := 1 b := 2 vs. b := 2 b := 1
17:03:59 [sandro]
chris: I'm okay with: p(b : 1, bb := f[ color :: red ])
17:04:28 [sandro]
p(b : 1, bb := f[ color : red ])
17:04:42 [sandro]
p(b : 1, bb : f[ color : red ])
17:05:27 [sandro]
chris: I'm okay with that.
17:06:03 [sandro]
a->b
17:06:08 [sandro]
a- > b
17:06:45 [sandro]
p(b : 1, bb : f[ color red, name "sandro"])
17:07:14 [sandro]
chris: interesting....
17:07:49 [sandro]
p(b : 1, bb : f[ color red])
17:07:52 [sandro]
p(b : 1, bb : f[color red])
17:08:18 [sandro]
p(b : 1, bb : f[ color red; name "sandro"])
17:08:30 [sandro]
(that's n3 semicolon)
17:09:13 [sandro]
chris: for me, the semicolon is too strong a break (think java/C)
17:10:45 [sandro]
chris: my favorite is colon
17:10:58 [sandro]
chris: my favorite is colon (for both NAU and frames.)
17:11:25 [sandro]
p(b : 1, bb : f[color : red, name : "sandro"])
17:12:01 [sandro]
p(b :: 1, bb :: f[color :: red, name :: "sandro"])
17:12:29 [sandro]
harold: nicer
17:12:34 [sandro]
chris: fine with me.
17:12:48 [Harold]
double colon for both NAUs and Frame slots.
17:12:58 [sandro]
sandro: I prefer colon, but.....
17:13:45 [sandro]
trying without spaces: p(b::1, bb::f[color::red, name::"sandro"])
17:14:12 [sandro]
RRSAgent, pointer?
17:14:12 [RRSAgent]
See http://www.w3.org/2009/02/20-rif-irc#T17-14-12
17:14:26 [sandro]
agreed: double-colon for NAU and frames.
17:15:55 [sandro]
if p(a, b, f[foo::bar]) then ....
17:16:36 [sandro]
if p(a,b,XX) and XX[foo::bar] then ....
17:16:50 [sandro]
if p(a,b,f) and f[foo::bar] then ....
17:17:39 [sandro]
agreed: they're not in bld, but they're nice.... high priority extension
17:18:11 [Harold]
ATOMIC ::= IRIMETA? (Atom | Equal | Member | Subclass | Frame)
17:18:36 [sandro]
chris: my removed?
17:18:54 [sandro]
harold: we had a syntactic de-sugaring process.
17:19:02 [sandro]
sandro: I think we thought it was too complicated....
17:20:30 [sandro]
sandro:be careful about anonymous frames....
17:20:46 [Zakim]
-ChrisW
17:27:22 [Harold]
An Import indicates the location of a document to be imported and an optional profile.
17:28:42 [sandro]
issue-67?
17:28:42 [trackbot]
ISSUE-67 -- need string predicates string-less-than, etc. (waiting on PS) -- OPEN
17:28:42 [trackbot]
http://www.w3.org/2005/rules/wg/track/issues/67
17:29:48 [sandro]
if a > b then
17:30:42 [sandro]
I think it ought to have an all-types-compare builtin....
17:33:47 [sandro]
This isn't a PS quesiton is it? How to you convert from a language with polymorphic operators? write an expression with lots of guards?
17:34:16 [Zakim]
-Sandro
17:34:19 [Zakim]
-Harold
17:34:20 [Zakim]
Team_(rif)15:49Z has ended
17:34:21 [Zakim]
Attendees were Harold, Sandro, ChrisW
17:36:23 [sandro]
RRSAgent, pointer?
17:36:23 [RRSAgent]
See http://www.w3.org/2009/02/20-rif-irc#T17-36-23
17:36:46 [sandro]
RRSAgent, make record public