[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Aikido language



Scott McKay wrote:

> At 1:20 PM -0500 2/5/04, Johan Ovlinger wrote:
>
>> Bryn Keller wrote:
>>
>>> In Nice (http://nice.sourceforge.net):
>>>
>>> //In a library somewhere
>>> class String {
>>>  // methods
>>> }
>>>
>>> // in your code
>>> String toUpperCase(String input) {
>>>    // convert to upper case
>>> }
>>>
>>> This may look like a function, but it really is a method - you can 
>>> specialize it for subclasses, you can use "regular" method syntax:
>>>
>>> "hello".toUpperCase();
>>
>>
>> I assume that there are scoping constructs so that two different 
>> additions to String don't interfere with each other?
>
>
> Of course, this has all been done in Lisp (CLOS) and Dylan.
> Generic functions are what you use to extend functionality,
> packages (or modules) are what you use to prevent clashes. (*)
>
>
Yes, exactly. Same in Nice, which definitely shows similarities to Dylan.

Bryn