[Pharo-project] Pharo changing the game

Stéphane Ducasse stephane.ducasse at inria.fr
Fri Feb 12 08:48:47 EST 2010


On Feb 12, 2010, at 10:56 AM, Lukas Renggli wrote:

> <summary>My point is that the ANSI standard is **not restrictive**. It
> does **not prevent** you from inventing a better future. It allows you
> to do whatever you like. I argue to not break the ANSI standard
> unnecessarly, but support it and avoid further fritting of the
> different Smalltalk implementations. If possible, we should also try
> to adopt APIs of existing functionality in other dialects.</summary>

Yes

>> you mean like nil been able to be put in a set?
>> I would like to have nil as any other object and I hope that this is in the standard.
> 
> ANSI does not say anything about that. We are free to do whatever we want.

it will really break your code in other dialect.

>> I would like to have immutability for certain classes (string, point....)
>> Does the standard says something about it?

> However, since VW already implements immutability, it would probably
> be beneficial to chose an API that is close to the VW implementation.

Yes this is the idea. I hope the interface is good. 

>> My point is that I'm in favor of compatibility but not at the cost of been kept in the 80e
>> I want to live in the 2020 years.
> 
> The ANSI standard doesn't say anything about Exceptions or Pragmas either.
> 
> - Exceptions: Today all Smalltalk platforms support the same exception
> API, mainly due to the fact that Seaside makes heavy use of some very
> specific exception features like resumable exceptions, exception sets,
> nesting exceptions, etc. VA had a very different implementation.
> Nowadays they do support basically the same protocol as Pharo, thanks
> to the tests we wrote for Seaside.
> 
> - Pragmas: In the beginning only VW had pragmas. I implemented the
> same API for Squeak 3.9. Today all existing Smalltalk platforms
> support these kind of pragmas. Pragmas and exceptions are suddenly
> portable, what is a great win.

I agree. 








More information about the Pharo-dev mailing list