Peter Van Roy wrote:
By "secure" ("sécurisée") I mean that it is impossible to break
the encapsulation of a data abstraction from within the language.
CLU allows the user to define abstract data types that have this property.
Of course, this does not imply anything particular regarding the
cryptographic security of the language's implementation!


Ah, this is what I'd call a "memory safe language with unbreakable encapsulation". Smalltalk, many Lisps, Java, and the memory-safe subset of ML qualify as well. In fact, most of the languages on your diagram qualify.

However, in all of these, the square root routine still executes with all of the user's authority -- it can delete all user's files if it wishes. In safe languages, we control the access the outside world has to the internals of an object. In object-capability languages, we also control the access objects have to the outside world.

Since safety+encapsulation is what you meant, then yes, I think object-capabilities are a separate paradigm and deserve their own category. My suggestion: relabel the current "sécurisée" box, and substitute Gedanken or W7 for CLU.

--
Text by me above is hereby placed in the public domain

    Cheers,
    --MarkM
_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to