to abstract OOP

Torsten Anders t.anders at qub.ac.uk
Tue May 20 16:15:05 CEST 2003


Dear Fred, dear Peter,

Thank you both for your reply.

> On Tue, 20 May 2003, Fred Spiessens wrote:
>> You probably already know that Oz allows very naturally to define
>> classes at runtime. For powerfull runtime model-reasoning the
>> 'otherwise method could come in handy also.

Thanks for pointing me to that. I still think about something like, e.g., 
generic functions (methods defined outside the class def, possibly with 
more complex dispatching than just checking the first args class). The 
'otherwise' method offers a nice way to use a message "somehow else".

On Tuesday, May 20, 2003, at 12:31  pm, Peter Van Roy wrote:
> please don't consider yourself limited by the OO *syntax* of Oz.

I do not know, whether I understood you correctly.

However, actually the Oz OO-syntax (message passing by 'applying' the 
object) makes me hesitate just using Oz classes and objects. Because I can 
not abstract the syntax, I hardly can change my decision later on from data 
implemented by objects to, e.g., data implemented by records (I could 
perhaps write a wrapper to change the syntax, but that would really cause 
confusion ;-).

May be it is because I come from Lisp (sorry ;) -- but I do like a uniform 
syntax. I do not understand why the syntax for a function call and a method 
call should differ. However, I do understand that doing OOP that way allows 
very efficient method dispatching.

Best,
Torsten

-
Please send submissions to users at mozart-oz.org
and administriva mail to users-request at mozart-oz.org.
The Mozart Oz web site is at http://www.mozart-oz.org/.
Please send bug reports to bugs at mozart-oz.org.





More information about the mozart-users mailing list