Efficient data representation in polymorphic languages

Abstract : Languages with polymorphic types (e.g. ML) have traditionnaly been implemented using Lisp-like data representations - everything has to fit in one word, if necessary by being heap-allocated and handled through a pointer. The reason is that in contrast with conventional statically-typed languages such as Pascal, it is not possible to assign one unique type to each expression at compile-time, an absolute requirement for using more efficient representations (e.g. unallocated multi-word values). In this paper, we show how to take advantage of the static polymorphic typing to mix correctly two styles of data representation in the implementation of a polymorphic language : specialized efficient representations are used when types are fully known at compile-time ; uniform Lisp-like representations are used otherwise.
Document type :
Reports
Complete list of metadatas

https://hal.inria.fr/inria-00075295
Contributor : Rapport de Recherche Inria <>
Submitted on : Wednesday, May 24, 2006 - 5:53:34 PM
Last modification on : Friday, September 16, 2016 - 3:06:20 PM
Long-term archiving on : Sunday, April 4, 2010 - 9:53:28 PM

Identifiers

  • HAL Id : inria-00075295, version 1

Collections

Citation

Xavier Leroy. Efficient data representation in polymorphic languages. RR-1264, INRIA. 1990. ⟨inria-00075295⟩

Share

Metrics

Record views

143

Files downloads

135