----- "Torsten Bergmann" <[email protected]> wrote:

| >And the other thing is that you put everything under spec for:
| #common
| 
| Depends on the meaning of common (only Pharo and other Squeak
| Distributions) or does it include other Smalltalks (VW, VAST) too?
| If Metacello gets ported then you are right.
| 
| The tutorial only says:
|  "In addition to #common, there are pre-defined attributes for each of
| the
|   platforms upon which Metacello runs (#pharo, #squeak, #gemstone and
|   #squeakCommon)."
| 
| However FFI (which is definitely limited to Squeak derivates) 
| is also #common and I used it as a template.
| 
| Maybe #squeakCommon is right for FFI and ExternalWebBrowser
| since this is what is used in the seaside, swazoo, ... configs.

Torsten,

My opinion on the platform attributes (#pharo, #squeak, #gemstone and 
#squeakCommon) is that attribute should reflect intention. If the code that is 
being configured is intended to run on all platforms, then using the #common 
attribute is fine. 

In the MetacelloRepository, the primary motivation for the configurations is to 
specify the packages and versions that are to be loaded into the Pharo 
environment and reflects the decisions made by the Pharo developers. Therefore, 
it makes a lot of sense to use the #pharo platform for those configurations, 
because the target environment for the configuration _is_ Pharo.

The ConfigigurationOfOmniBrowser is an interesting example. OmniBrowser runs on 
GemStone, Pharo and Squeak, but the choice of which specific packages to load 
is likely to be different for each platform (for a variety of reasons). So I 
don't think there is an absolutely right answer to the question.

Besides, even though code is intended to run on all three platforms, over time 
changes may be made that make in non-portable to one or more platforms, so even 
with the best intentions...

Much like the underlying code base, if the configuration is actively used and 
maintained, each  configuration will eventually find a steady state answer that 
works.

Dale

_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to