dc.contributor.author
Pape, Dirk
dc.date.accessioned
2018-06-08T07:27:53Z
dc.date.available
2009-04-14T08:23:36.267Z
dc.identifier.uri
https://refubium.fu-berlin.de/handle/fub188/18007
dc.identifier.uri
http://dx.doi.org/10.17169/refubium-21721
dc.description.abstract
Abstract. In this report a new backward strictness analysis for functional
languages is presented. It is called higher order demand propagation and is
applicable to a realistic non-strict functional language, which has a
polymorphic type system and supports higher order functions and user definable
algebraic data types. This report defines a semantics for higher order demand
propagation and relates it to the standard semantics of the functional
language. Each definition in a program is mapped to a demand propagator, which
is a higher order function, that propagates context demands to function
arguments. The strictness information deduced by the analysis is very
accurate, because demands can actually be constructed during the analysis.
These demands conform better to the analysed functions than abstract values,
which are constructed alone with respect to the type information like in other
existing strictness analyses. The richness of the semantic domains of higher
order demand propagation makes it possible to express generalised strictness
information for higher order functions even across module boundaries. An
approach to integrate the higher order demand propagation analysis into an
existing compiler for a lazy functional language is sketched at the end of the
report.
de
dc.relation.ispartofseries
urn:nbn:de:kobv:188-fudocsseries000000000021-2
dc.rights.uri
http://www.fu-berlin.de/sites/refubium/rechtliches/Nutzungsbedingungen
dc.subject.ddc
000 Informatik, Informationswissenschaft, allgemeine Werke::000 Informatik, Wissen, Systeme::004 Datenverarbeitung; Informatik
dc.title
Higher order demand propagation
refubium.affiliation
Mathematik und Informatik
de
refubium.affiliation.other
Institut für Informatik
refubium.mycore.fudocsId
FUDOCS_document_000000001559
refubium.resourceType.isindependentpub
no
refubium.series.name
Freie Universität Berlin, Fachbereich Mathematik und Informatik
refubium.series.reportNumber
98-15
refubium.mycore.derivateId
FUDOCS_derivate_000000000339
dcterms.accessRights.openaire
open access