You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openoffice.apache.org by "Rony G. Flatscher (Apache)" <ro...@apache.org> on 2013/01/10 17:04:51 UTC

Multiple Inheritance Is Easy! (Re: Help please: Can we get some more "easy bugs" marked in Bugzilla?

On 10.01.2013 15:30, Rob Weir wrote:
> On Thu, Jan 10, 2013 at 9:06 AM, Ariel Constenla-Haile
> <ar...@apache.org> wrote:
>> Hi Rob, *
>>
>> On Wed, Jan 09, 2013 at 11:25:28AM -0500, Rob Weir wrote:
>>> Looking right now and I only see three:
>>>
>>> https://issues.apache.org/ooo/buglist.cgi?f1=cf_fix_difficulty&list_id=41193&o1=equals&resolution=---&query_format=advanced&v1=easy
>>>
>>> I'd like to start a call for dev volunteers in the next few weeks.  I
>>> assume it will take them a few days to get their builds up and
>>> running.  But after that they will be looking for tasks to work on.
>>>
>>> We agreed to use the "difficulty" field in Bugzilla for this, to
>>> indicate which bugs are most suitable for new volunteers.  So I need
>>> your help to get a bunch of issues that are suitable for new
>>> volunteers.  Ideally we'd have 30 or more classified as "easy".
>>>
>>> Note:  these do not need to be bugs.  We can have enhancements that
>>> are easy.  Even cleanup work.  So feel free to enter new tasks, with
>>> the difficulty field set, so we have something to point new volunteers
>>> to.
>> There are three API-related task that would be nice to have completed
>> for AOO 4:
>>
>> 121578 - [IDL] Convert old-style services implementing a single
>>        interface to new-style
>>        https://issues.apache.org/ooo/show_bug.cgi?id=121578
>>
>> 121582 - [IDL] Unify services and interfaces which are merely an
>>        extension https://issues.apache.org/ooo/show_bug.cgi?id=121582
>>
>> 121606 - Implement multiple inheritance for the ease of API usage
>>        https://issues.apache.org/ooo/show_bug.cgi?id=121606
>>
> OK.  Thanks.  Though I must admit that I've never heard the word
> "multiple inheritance" and "easy" used together in the same sentence
> ;-)
Actually, "multiple inheritance" *is easy*!
:-)

About 15 years ago, when I read about all the difficulties professional programmers were supposed to
have understanding and applying "multiple inheritance" (which also led the Java designers to omit
it, although C++ would have allowed for it) I could not believe it. When researching some examples
that were supposed to demonstrate how multiple inheritance could ease solving certain kind of
problems, I could understand better: the examples used to be so complicated that one had
difficulties to understand the problems at hand and as a result it was almost un-understandable what
and why the multiple inheritance solution would be dubbed to be "easy".

Then, just as a little experiment, I tried to test non-professional programmers ("end-user
programmers", i.e. business adminstration students who were interested in information systems as
well) whether it was possible for them to understand the concept of "multiple inheritance" and
applying it with the means some programming languages had on board (using a programming language
that was easy to learn from its syntax, but supported multiple inheritance too).

It turned out in the end that it made a big difference with what examples/problems one would
approach them. If the example/problem was easy to understand, then the concept of multiple
inheritance was easy for them and they could assess the programmatic means available to them and
apply them successfully!

Ever since then, I have been teaching multiple inheritance successfully to non-professional
programmers!

So in the light of professional programmers in the context of a truly object-oriented system like
AOO, it should indeed be easy to apply multiple inheritance to problem domains which are rooted in
multiple inheritance problems in the first place!

8-)

---rony