Andre Molnar wrote:
Carl, I couldn't disagree with you more.

Carl McDade wrote:
> In actuality the extension of a module in that manner should not 
happen. 
> This is against the whole concept of plugin modularity. Probably the 
> reason for the prolification of modules is that they are not 
autonomous 
> as they should be. Many of the present modules should be completed as 
> variants of the original an thus be able to relplace them entirely.

What happens when you have two modules that append functionality to an 
existing module.  If you do this then you would need 4 different files 
that administrators have to choose between to get functionality they 
want.

e.g.
example.module
example_with_extension1.module
example_with_extension2.module
example_with_extension1_and_with_extension2.module

Now how about 3?  You do the binary math and you will see how quickly 
this could get out of control.

And how do you maintain this?  If something changes in example.module 
what do you do with [say] 127 different files that all have the same 
code embedded in them?

This is the exact opposite of modularity.

> This philosofy is one that is solid in other software industries but 
> only in parts of Drupal. Holding to it in the case of modules would 
> solve a lot of the problems with UI and and database modification.

Solid?  What you describe is unmaintainable bloat.

andre

  
In your example then those modules would be forced to be part of the system core. As a "plugin" module they would not qualify. As stated previously "many" is the key word here. Qualification to either category of "core" or "plugin" should have a line drawn.

What I am proposing is a system in the same way an operative system works with drivers which is the proper status of a plugin module. What you are describing in your example is similar to the system of dlls or so where the files may or may not be dependant on other files in a particular group.

This is off-topic to this convo but it is important to mention. The reason that Drupal is going to be very hard to optimize performance on is because every module is loaded. This stems from the fact that there is no real definative differences made between the "core modules" and  "plugin modules" and there should be. This also leads to the  core  being bloated as you mentioned.

--
Untitled Document Carl McDade
Information Technology Consult
www.carlmcdade.com
carlmcdade@gmail.com

Customer Relationship and E-commerce Technology Services for small businesses ____________________________________________________________________________
kläppavägen 9a
82735 Ljusdal
Sweden
tel.0651-15805   telefax 0651-10875

Organisationsnummer: 590310-2050
VAT-nr. SE590310205001
Innehar F-Skattebevis
bankgiro: 5115 4433