From: Pascal Bourguignon
Subject: Re: Replaceable classes?
Date: 
Message-ID: <87ekc3jiur.fsf@thalassa.informatimago.com>
Matthias <··@spam.please> writes:

> Hi,
>
> I recently read on a German IT news page that some inventors from
> Microsoft have been granted a patent on "Replaceable classes and
> virtual constructors for object-oriented programming languages" (US
> Pat. #6,895,581, May 17, 2005, http://tinylink.com/?bCVVPOPPuw  ). 
>
> Citing from the patent they address the problem that 
>
>   "the introduction of a new derived class may require extensive
>    editing and recompilation of existing source listing originally
>    programmed to create objects of the old base classes. This process
>    can be very time consuming and prone to errors, especially when the
>    software project is large and the class hierarchy is complex. As a
>    result, existing object-oriented programming languages do not
>    facilitate incremental development of a software project by
>    gradually replacing base classes with new derived classes."
>
> This is solved by introducing "replaceable" classes:
>
>    "The class replacement allows an existing module to be reused to
>     create objects of the new class without the need to modify and
>     recompile the source code for the existing module. This ability to
>     reuse existing code to create objects of new classes greatly
>     facilitates incremental development of a software application by
>     introducing new derived classes to provide refined functionality
>     and features."
>
> The patent doesn't mention Lisp, but I wonder if this problem has not
> already been addressed in the same way by CLOS?

To me it sounds like the factory pattern, or just plain dynamic class
systems like in CLOS, Objective-C or Smalltalk, where you can change a
parent class  and you don't have to recompile the subclasses.

A useless narrow-minded patent targetting only C++ (and perhaps C# too?).

-- 
__Pascal_Bourguignon__               _  Software patents are endangering
()  ASCII ribbon against html email (o_ the computer industry all around
/\  1962:DO20I=1.100                //\ the world http://lpf.ai.mit.edu/
    2001:my($f)=`fortune`;          V_/   http://petition.eurolinux.org/

From: Kenny Tilton
Subject: Re: Replaceable classes?
Date: 
Message-ID: <3p3je.14$Uc.5748@twister.nyc.rr.com>
Pascal Bourguignon wrote:
> Matthias <··@spam.please> writes:
> 
> 
>>Hi,
>>
>>I recently read on a German IT news page that some inventors from
>>Microsoft have been granted a patent on "Replaceable classes and
>>virtual constructors for object-oriented programming languages" (US
>>Pat. #6,895,581, May 17, 2005, http://tinylink.com/?bCVVPOPPuw  ). 
>>
>>Citing from the patent they address the problem that 
>>
>>  "the introduction of a new derived class may require extensive
>>   editing and recompilation of existing source listing originally
>>   programmed to create objects of the old base classes. This process
>>   can be very time consuming and prone to errors, especially when the
>>   software project is large and the class hierarchy is complex. As a
>>   result, existing object-oriented programming languages do not
>>   facilitate incremental development of a software project by
>>   gradually replacing base classes with new derived classes."
>>
>>This is solved by introducing "replaceable" classes:
>>
>>   "The class replacement allows an existing module to be reused to
>>    create objects of the new class without the need to modify and
>>    recompile the source code for the existing module. This ability to
>>    reuse existing code to create objects of new classes greatly
>>    facilitates incremental development of a software application by
>>    introducing new derived classes to provide refined functionality
>>    and features."
>>
>>The patent doesn't mention Lisp, but I wonder if this problem has not
>>already been addressed in the same way by CLOS?
> 
> 
> To me it sounds like the factory pattern, or just plain dynamic class
> systems like in CLOS, Objective-C or Smalltalk, where you can change a
> parent class  and you don't have to recompile the subclasses.
> 
> A useless narrow-minded patent targetting only C++ (and perhaps C# too?).
> 

1. The patent covers all object-oriented languages, not just C++.

2. The patent is about not having to recompile a DLL defining and using 
class X when you want to try a different approach. Instead, you define 
class Y as a subclass of X, extend as you see fit, then register Y as 
replacing X. And all this must be set up beforehand by placing X in a 
reusable module. We are laughing, and C++ developers think they have 
died and gone to heaven. :)

kt

-- 
Cells? Cello?: http://www.common-lisp.net/project/cells/
Cells-Gtk?: http://www.common-lisp.net/project/cells-gtk/
Why Lisp? http://lisp.tech.coop/RtL%20Highlight%20Film

"Doctor, I wrestled with reality for forty years, and I am happy to 
state that I finally won out over it." -- Elwood P. Dowd
From: Pascal Bourguignon
Subject: Re: Replaceable classes?
Date: 
Message-ID: <871x83jakl.fsf@thalassa.informatimago.com>
Kenny Tilton <·······@nyc.rr.com> writes:
> 1. The patent covers all object-oriented languages, not just C++.
>
> 2. The patent is about not having to recompile a DLL defining and
> using class X when you want to try a different approach. Instead, you
> define class Y as a subclass of X, extend as you see fit, then
> register Y as replacing X. And all this must be set up beforehand by
> placing X in a reusable module. We are laughing, and C++ developers
> think they have died and gone to heaven. :)

You mean like what is routinely done in Objective-C with poseAs: (and
probably in Smalltalk too)?

Patents are so weak!

-- 
__Pascal Bourguignon__                     http://www.informatimago.com/
Kitty like plastic.
Confuses for litter box.
Don't leave tarp around.