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
.jpg)
- Institución
- Universidad Nacional de La Plata
- OAI Identificador
- oai:sedici.unlp.edu.ar:10915/24127
Ver los metadatos del registro completo
| 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 |