[squeak-dev] Re: Migrating Complex in a separate package

Rodney Polkinghorne rpolkinghorne at groupwise.swin.edu.au
Tue Oct 11 06:34:50 UTC 2011

> How many of you use Complex ?

I do.

> Facts:
> - Complex is present in Squeak trunk image but not used in Kernel
> - Complex is absent from Pharo image.

extra fact:
- Complex is absent from Cuis

I think a common Complex library makes sense.

> What do you think of these proposals ?

If complex numbers are removed from the image, there's a risk that
scientists evaluating Squeak won't find them, and will reject
Smalltalk as a result.  Complex can't be a library, because it takes
special syntax to parse 3+4i.  Or so everyone thinks, who hasn't seen

I think brevity trumps the arguments for ComplexNumber.  Rebuttal:

1. Does any other language call them that?  Scheme, C, Python and
Haskell all say complex.

2. Smalltalk has been used for 30 years.  Has there ever been an
isComplex method that didn't refer to numbers?

3. All symbolic algebra systems I know about define isKnown, to test
for literal values of any type.  Users can define isKnownComplex as
self isKnown & self isComplex if they want to.

> unifying Complex and Point

I think points with non-elemental arithmetic would be too big a
change.  However, Point>>asArgandComplex and Complex>>asArgandPoint
would be useful.


More information about the Squeak-dev mailing list