Skip to Main content Skip to Navigation

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 :
Complete list of metadata
Contributor : Rapport de Recherche Inria <>
Submitted on : Wednesday, May 24, 2006 - 5:53:34 PM
Last modification on : Thursday, February 11, 2021 - 2:50:07 PM
Long-term archiving on: : Sunday, April 4, 2010 - 9:53:28 PM


  • HAL Id : inria-00075295, version 1



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



Record views


Files downloads