[Top] [All Lists]

Re: [ontolog-forum] Last Call: OWL 2 and rdf:text primitive datatype

To: "[ontolog-forum] " <ontolog-forum@xxxxxxxxxxxxxxxx>
From: Randall R Schulz <rschulz@xxxxxxxxx>
Date: Sun, 26 Apr 2009 10:52:00 -0700
Message-id: <200904261052.01187.rschulz@xxxxxxxxx>
On Sunday April 26 2009, John F. Sowa wrote:
> Dick,
> RHM> I finally understand that Class is the extension set of Concept.
>  > Now, all of the "strange" properties of "Class" are obvious,
>  > because "Class" is just a set.
> The word 'class' has created an enormous amount of confusion in
> computer all branches of computer science and related subjects.  The
> problem is caused by three very different definitions of the word:
>   ....
>   3. In object-oriented programming systems, people have adopted the
>      word 'class' as a synonym for 'type'.  That is an extremely
>      unfortunate choice of word that should be outlawed.  It creates
>      an immense amount of confusion without any redeeming social
> value.    (01)

That's really an oversimplification.    (02)

In some languages, types and classes are synonymous or nearly so, but in 
many languages, they are distinct, even if closely related. Java has 
purely abstract (non-instantiable, implementation-free) types 
called "interfaces," so-called "abstract classes" which have partial 
implementations but are not instantiable and ordinary (concrete) 
classes which are instantiable. Java also has "primitive types" such as 
numeric and boolean types. All of these things have characteristics of 
types. My understanding (entirely hearsay) is that in OCaml class and 
type entirely independent formalisms. In Scala, about which I know a 
little but am no expert, types and classes are also distinct though 
closely entwined. My C++ is pretty rusty, but I think it might be valid 
to say that its use of class is synonymous with type, though C++ also 
has primitive types akin to those of Java.    (03)

I know the world of software and programming is notorious for abusing 
terminology and I wish it weren't so, but the problem is that (ab-) 
uses of existing terms gets established without the awareness of those 
who understand the proper or pre-existing use of those terms. Once that 
happens, it's pretty hard to replace those new uses with something less 
confusing to those who wish to operate across domains.    (04)

Regardless of what a logical use of terminology would be, class and type 
are going to remain a part of the nomenclature  in programming and 
programming language communities for a long time. They will continue to 
have varying interpretations and degrees of distinctness.    (05)

> ...
> John Sowa    (06)

Randall Schulz    (07)

Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx    (08)

<Prev in Thread] Current Thread [Next in Thread>