Thanks for the answer, Bruce – very enlightening.
On Wed, Feb 12, 2014 at 10:15 PM, Bruce Mitchener <bruce.mitche...@gmail.com > wrote: > On Thu, Feb 13, 2014 at 9:56 AM, Bruce Mitchener < > bruce.mitche...@gmail.com> wrote: > >> business of declaring attributes like this seems to have started in >>> Smalltalk and continued in most of its sphere of influence – declaring this >>> method to be virtual and that field to be private, etc. It just strikes me >>> as fiddly and that there are too many things that can combine in too many >>> ways. But like I said, this is a matter of taste. >>> >> >> Dylan doesn't have protected, public, private adjectives. The visibility >> of a binding is, instead, decided by whether or not it has been exported >> from the module / library. This is discussed some on the Dylan Wikipedia >> page as a difference between classical OO and CLOS-style OO. In classical >> OO, the class is the unit of encapsulation, while in Dylan and CLOS, it is >> the module. This is an extra degree of flexibility and control for the >> Dylan or CLOS programmer. >> >> There aren't really that many modifiers and it is pretty easy to grasp >> when you're using the language. There are also no "virtual" modifiers. :) >> > > I've been reminded that while we have no "virtual" modifiers for methods, > we do in fact have one for slots, but it doesn't mean what you're referring > to above with virtual methods: > > http://opendylan.org/books/drm/Slots#IX-636 > > - Bruce > >