Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!van-bc!ubc-cs!fs1!coho.ee.ubc.ca!mikeb From: mikeb@coho.ee.ubc.ca (Mike Bolotski) Newsgroups: comp.lang.misc Subject: Re: Languages that allow extensions to classes Message-ID: <1238@fs1.ee.ubc.ca> Date: 12 Apr 90 01:09:05 GMT References: <16560@estelle.udel.EDU> Sender: root@fs1.ee.ubc.ca Reply-To: mikeb@coho.ee.ubc.ca (Mike Bolotski) Organization: Dept. of Electrical Engineering University of B.C. Lines: 23 In article <16560@estelle.udel.EDU> new@ee.udel.edu (Darren New) writes: >One feature of Smalltalk that I really like and use is the ability to >put methods from one class into several files. This allows, for example, >for the extention of already-defined classes with new methods. >In C++, I (think) I have to change the header file, thereby requiring me Yes.. > [..] Does anybody know >of other languages which allow the user to extend functionality of system >classes/libraries/etc without changing files where the old stuff is >defined? Well, CLOS (Common Lisp Object System) for one. And I really dislike the above feature, actually. In C++ the header file documents the entire behaviour of the class. In CLOS that information is spread out all over the source files. Not an example of proper software engineering, IMHO. Mike Bolotski, Department of Electrical Engineering, University of British Columbia, Vancouver, Canada mikeb@salmon.ee.ubc.ca | mikeb%salmon.ee.ubc.ca@relay.ubc.ca salmon.ee.ubc.ca!mikeb@uunet.uu.net| uunet!ubc-cs!salmon.ee.ubc.ca!mikeb