Using higher-order functional programming to do register allocation on a functional language

Autores
Koch, Juan E.
Año de publicación
1997
Idioma
inglés
Tipo de recurso
documento de conferencia
Estado
versión publicada
Descripción
We show how to translate a call by value functional language to a RISC architecture in a uniform way that encompasses register alloca tion and spill code placement avoids unnecessary copy instructions provides short circuit translation of Boolean expressions and can make use of inter procedural information The translation is directed by the source language structure It uses higher order functional programming extensively Prelimi nary measurements suggest that this method can compete with graph colouring the framework in which most contemporary register allocators are cast The translation is implemented in the ML Kit a region inference based SML compiler On average our back end compiles our benchmarks to code that runs in of the time of the code generated by SML NJ version.
Eje: Conferencia latinoamericana de programación funcional
Red de Universidades con Carreras en Informática (RedUNCI)
Materia
Ciencias Informáticas
higher-order functional programming
functional language
Languages
Nivel de accesibilidad
acceso abierto
Condiciones de uso
http://creativecommons.org/licenses/by-nc-sa/2.5/ar/
Repositorio
SEDICI (UNLP)
Institución
Universidad Nacional de La Plata
OAI Identificador
oai:sedici.unlp.edu.ar:10915/24127

id SEDICI_8ea4f476dca54c3f1b92cdaa09ec4715
oai_identifier_str oai:sedici.unlp.edu.ar:10915/24127
network_acronym_str SEDICI
repository_id_str 1329
network_name_str SEDICI (UNLP)
spelling Using higher-order functional programming to do register allocation on a functional languageKoch, Juan E.Ciencias Informáticashigher-order functional programmingfunctional languageLanguagesWe show how to translate a call by value functional language to a RISC architecture in a uniform way that encompasses register alloca tion and spill code placement avoids unnecessary copy instructions provides short circuit translation of Boolean expressions and can make use of inter procedural information The translation is directed by the source language structure It uses higher order functional programming extensively Prelimi nary measurements suggest that this method can compete with graph colouring the framework in which most contemporary register allocators are cast The translation is implemented in the ML Kit a region inference based SML compiler On average our back end compiles our benchmarks to code that runs in of the time of the code generated by SML NJ version.Eje: Conferencia latinoamericana de programación funcionalRed de Universidades con Carreras en Informática (RedUNCI)1997info:eu-repo/semantics/conferenceObjectinfo:eu-repo/semantics/publishedVersionObjeto de conferenciahttp://purl.org/coar/resource_type/c_5794info:ar-repo/semantics/documentoDeConferenciaapplication/pdfhttp://sedici.unlp.edu.ar/handle/10915/24127enginfo:eu-repo/semantics/openAccesshttp://creativecommons.org/licenses/by-nc-sa/2.5/ar/Creative Commons Attribution-NonCommercial-ShareAlike 2.5 Argentina (CC BY-NC-SA 2.5)reponame:SEDICI (UNLP)instname:Universidad Nacional de La Platainstacron:UNLP2026-01-14T13:20:40Zoai:sedici.unlp.edu.ar:10915/24127Institucionalhttp://sedici.unlp.edu.ar/Universidad públicaNo correspondehttp://sedici.unlp.edu.ar/oai/snrdalira@sedici.unlp.edu.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:13292026-01-14 13:20:40.232SEDICI (UNLP) - Universidad Nacional de La Platafalse
dc.title.none.fl_str_mv Using higher-order functional programming to do register allocation on a functional language
title Using higher-order functional programming to do register allocation on a functional language
spellingShingle Using higher-order functional programming to do register allocation on a functional language
Koch, Juan E.
Ciencias Informáticas
higher-order functional programming
functional language
Languages
title_short Using higher-order functional programming to do register allocation on a functional language
title_full Using higher-order functional programming to do register allocation on a functional language
title_fullStr Using higher-order functional programming to do register allocation on a functional language
title_full_unstemmed Using higher-order functional programming to do register allocation on a functional language
title_sort Using higher-order functional programming to do register allocation on a functional language
dc.creator.none.fl_str_mv Koch, Juan E.
author Koch, Juan E.
author_facet Koch, Juan E.
author_role author
dc.subject.none.fl_str_mv Ciencias Informáticas
higher-order functional programming
functional language
Languages
topic Ciencias Informáticas
higher-order functional programming
functional language
Languages
dc.description.none.fl_txt_mv We show how to translate a call by value functional language to a RISC architecture in a uniform way that encompasses register alloca tion and spill code placement avoids unnecessary copy instructions provides short circuit translation of Boolean expressions and can make use of inter procedural information The translation is directed by the source language structure It uses higher order functional programming extensively Prelimi nary measurements suggest that this method can compete with graph colouring the framework in which most contemporary register allocators are cast The translation is implemented in the ML Kit a region inference based SML compiler On average our back end compiles our benchmarks to code that runs in of the time of the code generated by SML NJ version.
Eje: Conferencia latinoamericana de programación funcional
Red de Universidades con Carreras en Informática (RedUNCI)
description We show how to translate a call by value functional language to a RISC architecture in a uniform way that encompasses register alloca tion and spill code placement avoids unnecessary copy instructions provides short circuit translation of Boolean expressions and can make use of inter procedural information The translation is directed by the source language structure It uses higher order functional programming extensively Prelimi nary measurements suggest that this method can compete with graph colouring the framework in which most contemporary register allocators are cast The translation is implemented in the ML Kit a region inference based SML compiler On average our back end compiles our benchmarks to code that runs in of the time of the code generated by SML NJ version.
publishDate 1997
dc.date.none.fl_str_mv 1997
dc.type.none.fl_str_mv info:eu-repo/semantics/conferenceObject
info:eu-repo/semantics/publishedVersion
Objeto de conferencia
http://purl.org/coar/resource_type/c_5794
info:ar-repo/semantics/documentoDeConferencia
format conferenceObject
status_str publishedVersion
dc.identifier.none.fl_str_mv http://sedici.unlp.edu.ar/handle/10915/24127
url http://sedici.unlp.edu.ar/handle/10915/24127
dc.language.none.fl_str_mv eng
language eng
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
http://creativecommons.org/licenses/by-nc-sa/2.5/ar/
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 Argentina (CC BY-NC-SA 2.5)
eu_rights_str_mv openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-sa/2.5/ar/
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 Argentina (CC BY-NC-SA 2.5)
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:SEDICI (UNLP)
instname:Universidad Nacional de La Plata
instacron:UNLP
reponame_str SEDICI (UNLP)
collection SEDICI (UNLP)
instname_str Universidad Nacional de La Plata
instacron_str UNLP
institution UNLP
repository.name.fl_str_mv SEDICI (UNLP) - Universidad Nacional de La Plata
repository.mail.fl_str_mv alira@sedici.unlp.edu.ar
_version_ 1854323947381719040
score 13.127887