[Pharo-project] Pharo changing the game

Lukas Renggli renggli at gmail.com
Fri Feb 12 04:56:26 EST 2010

<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>

> 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.

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

ANSI does not say anything about that. We are free to do whatever we want.

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

> 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.


Lukas Renggli

More information about the Pharo-dev mailing list