Impact of Cardelli's object calculus

Paul Dufresne
Fri, 15 May 1998 03:26:56 +0400

Well I have come to read a bit the papers from Luca Cardelli, and I am
quite curious what an object-oriented language based on he's object
calculus can looks like. It is real hard for me to understand these
strange mathematical notation he use.

But one of the basic thing I understand make it different from other
object-oriented language is the fact that it allows methods to be
updated in programs. Cardelli seems to tell that he's object calculus
is somehow more expressive than lambda calculus. At least that it is
easier to translate from lambda calculi to his object calculus than
it is to go the other way. This seems to me that it could be a better
choice for Tunes because it would be easier to translate functionnal
and imperative language to this particuliar object oriented flavor.

But I am just beginning to understand what lambda calculi is so...
maybe a more knowledgable than me should take a look at his recent
papers on the subject.

I wonder how recent language like Beta, Cecil and Self compare to this
object calculus. In particular do they allows update of methods?
If no such language exist yet, it could be interesting to try to make
a simple one, an untyped one (Cardelli have done an untyped and a typed
version of his calculus). It should not be very hard since it is quite
minimalist. It has about just lexical scoping (not sure to use this
word correctly, I means by it let <symbol> in <expression>.), method
invocation, and method update (object.method := <definition of method>).
Somehow I have the feeling I did not understood because it seems hard
to me to believe that an expressive language could be made by just these

What made me go to Cardelli's web page in the first place was a message
in the archive of the Squeak mailing list saying that one of the
improvement of Squeak could be to use this object calculus rather than
the actual class-oriented way of doing things. But I don't know if there
is really someone working on that in the Squeak community.

The address of the Cardelli's web page is:

Net-Tamer V 1.11 - Test Drive