Re: Enhancing object-oriented programming with OWL

Have a gaze at http://www.paulgraham.com/reesoo.html
OOP isn't a very clear idea.

On Aug 18, 2012, at 7:35 AM, adasal wrote:

> 
> 
> On 17 August 2012 23:08, Timothy Armstrong <tim.armstrong@gmx.com> wrote:
> Certainly, object-oriented classes and OWL classes are different, but my understanding is that the main difference is just that OWL is strictly better.
> 
> What do you mean by 'strictly', 'better' and 'strictly better'?
>  
>  I'm not aware of anything OOP can do that OWL cannot do, but OWL can do a lot more.

Folks know I'm a big fan of OWL, but this just isn't so. A simple example is that many OO languages allow defaults and overriding of them, something OWL can't handle. An then there's the various kinds of access control such as public and private methods. OWL relations are strictly binary, a number of OO languages have multiple dispatch with arities > 2. 

Are there things that might be incorporated into OOP from OWL? Probably. Is OWL the basis of OOP "done better"? No - OOP means too many things to have that be true.

-Alan 

> 
> What do you mean by 'do'? Do you mean it is more expressive such that it is possible to define in OWL what cannot be defined in OOP? Isn't that axiomatic in that they are different languages with different semantics?
> What you are really saying is that you want to extend the syntax of OOP in a form you think is convenient to use such that it will be able to express OWL semantics.
> 
> Well, abstract classes, but that's all I can think of.
> So is this relevant?
> 
> Or if there is still going to be a disparity,
> What does this mean?
>  
> we should still just be able to add all the OWL class constructs and everything else about OWL and let people use them in OOP.
> You mean with your annotations - but the issue really is whether this is more convenient than existing approaches.
>  
> We'd need to get into a compiler to do some of it, but I think it would be worth it.
> Why would it be necessary to get into the compiler, what are you talking about?
> Do you mean to pick up annotations - that is not necessary as new annotations can be defined as things stand - or to optimise such as in the way you mention where reasoning is selective. I can't see that this needs access to the compiler so much as an understanding of the logic of whether and when selective reasoning is a proper optimisation.
> 
> You would have to show that your approach is better than the existing approaches to optimisation that sit on top of triple and quad stores.
> Can you do this?
> 
> Adam
> 

Received on Saturday, 18 August 2012 13:45:15 UTC