What is Expressiveness in a Computer Language

Andreas Rossberg rossberg at ps.uni-sb.de
Wed Jun 21 18:01:29 CEST 2006

Darren New wrote:
> As far as I know, LOTOS is the only 
> language that *actually* uses abstract data types

Maybe I don't understand what you mean with ADT here, but all languages 
with a decent module system support ADTs in the sense it is usually 
understood, see ML for a primary example. Classes in most OOPLs are 
essentially beefed-up ADTs as well.

> Indeed, the ability to declare a new type that has the exact same 
> underlying representation and isomorphically identical operations but 
> not be the same type is something I find myself often missing in 
> languages. It's nice to be able to say "this integer represents vertical 
> pixel count, and that represents horizontal pixel count, and you don't 
> get to add them together."

Not counting C/C++, I don't know when I last worked with a typed 
language that does *not* have this ability... (which is slightly 
different from ADTs, btw)

- Andreas

More information about the Python-list mailing list