Welcome!
To use the personalized features of this site, please log in or register.
If you have forgotten your username or password, we can help.
|
 |
Polymorphic equality — No tags required
| |
|
Polymorphic equality — No tags required
Martin Elsman1 
| (1) |
Department of Computer Science, University of Copenhagen, Universitetsparken 1, DK-2100 Copenhagen Ø, Denmark |
Abstract
Polymorphic equality is a controversial language construct. While being convenient for the programmer, it has been argued
that polymorphic equality (1) invites to violation of software engineering principles, (2) lays a serious burden on the language
implementor, and (3) enforces a runtime overhead due to the necessity of tagging values at runtime. We show that neither (2)
nor (3) are inherent to polymorphic equality by showing that one can compile programs with polymorphic equality into programs
without polymorphic equality in such a way that there is no need for tagging or for runtime type analysis. Also, the translation
is the identity on programs that do not use polymorphic equality. Experimental results indicate that even for programs that
use polymorphic equality, the translation gives good results.
Fulltext Preview (Small, Large)
 References secured to subscribers.
|
|
|
|
|
|