W3C home > Mailing lists > Public > public-rif-wg@w3.org > September 2008

Re: [RIF-APS] Rules Sign

From: Michael Kifer <kifer@cs.sunysb.edu>
Date: Tue, 2 Sep 2008 14:54:08 -0400
To: Chris Welty <cawelty@gmail.com>
Cc: Christian de Sainte Marie <csma@ilog.fr>, Jos de Bruijn <debruijn@inf.unibz.it>, Adrian Paschke <adrian.paschke@biotec.tu-dresden.de>, public-rif-wg@w3.org
Message-ID: <20080902145408.7d1db03c@kiferserv>



On Tue, 02 Sep 2008 13:50:14 -0400
Chris Welty <cawelty@gmail.com> wrote:

> 
> 
> </chair>
> My claim is that every time I see -> *I* think of implication.

OK, then speak for *yourself* only.

>  This is a basic 
> LOGIC dialect, that's what -> means in logic.  This symbol predates C++ by
> many decades, and probably centuries.  I can find out if you really want to
> belabor it.

Certainly not centuries, but this does not matter. The point is that symbols
are being repurposed routinely, and this symbol has been used in other
contexts as well. The oldest known use of -> is to denote an arrow piercing
somebody's body. It does not preclude using it differently in logic, however.

> -> in C++ was for dereferencing a pointer to a structured object, and was 
> supposed to evoke the image of a pointer.  It was shorthand for (*obj).slot

You are seeing this in a narrow sense. The separation between
-> and . in C is an artifact of design. There are languages that came later
and allow to use . and -> interchangeably because there is no reason to
distinguish these two contexts. This is well-known to many language people.

> that's not what we're doing here.
> 
> As I just said, I'm *not* arguing that -> be used for implication, however.  I 
> just don't want the standard implication symbol used for slots and named 
> arguments.  It's confusing to anyone familiar with logic.

Regarding "anyone", please speak for yourself. It is presumptuous of you to
make such a claim. In particular, it implies that, say, Hassan and I are not
familiar with logic. Maybe all of us are suckers who are not as much familiar
with logic as you do, but it would not hurt you to be a bit more humble.

michael

> <chair>
> 
> -Chris
> 
> Michael Kifer wrote:
> > 
> > On Tue, 02 Sep 2008 18:45:40 +0200
> > Christian de Sainte Marie <csma@ilog.fr> wrote:
> > 
> >> Michael Kifer wrote:
> >>
> >>> On Tue, 02 Sep 2008 16:39:36 +0200
> >>> Christian de Sainte Marie <csma@ilog.fr> wrote:
> >>>
> >>>
> >>>> Why not use = for frames instead, as in obj[prop = val]?
> >>>>
> >>>> As I suggested on IRC during last week's telecon, that would reflect the
> >>>> semantics that the frame is true iff the value of property 'prop' for object
> >>>> 'obj' is equal to 'val'. 
> >>>
> >>> Such a frame is true NOT if the value is equal to val, but if the value of prop
> >>> CONTAINS val.
> >> Right. I forgot that. But my point about making it extensible to using other tests than equality remains.
> > 
> > We can allow extensions that use whatever u want in between name and value.
> > This has nothing to do with whether we use -> or hasValue, or whatever.
> > 
> > B.t.w., the -> is not new and is well established. In this kind of languages it
> > goes back almost 25 years to Hasan's Login, or maybe even earlier. I always
> > thought that the use of -> comes from C and C++, where -> is used to refer to
> > values of properties. And it is also used in SQL in some cases.
> > 
> > So, Chris' claim that -> always evokes implication is highly subjective.
> > It depends who you ask.
> > 
> > 
> > michael
> > 
> 
Received on Tuesday, 2 September 2008 18:55:12 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:33:54 GMT