Shortcut fusion rules for the derivation of circular and higher-order programs
| Main Author: | |
|---|---|
| Publication Date: | 2011 |
| Other Authors: | , |
| Format: | Article |
| Language: | eng |
| Source: | Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| Download full: | http://hdl.handle.net/1822/70349 |
Summary: | Functional programs often combine separate parts using intermediate data structures for communicating results. Programs so defined are modular, easier to understand and maintain, but suffer from inefficiencies due to the generation of those gluing data structures. To eliminate such redundant data structures, some program transformation techniques have been proposed. One such technique is shortcut fusion, and has been studied in the context of both pure and monadic functional programs. In this paper, we study several shortcut fusion extensions, so that, alternatively, circular or higher-order programs are derived. These extensions are also provided for effect-free programs and monadic ones. Our work results in a set of generic calculation rules, that are widely applicable, and whose correctness is formally established. |
| id |
RCAP_47df0326ff36b2f41d57180d5daade9f |
|---|---|
| oai_identifier_str |
oai:repositorium.sdum.uminho.pt:1822/70349 |
| network_acronym_str |
RCAP |
| network_name_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository_id_str |
https://opendoar.ac.uk/repository/7160 |
| spelling |
Shortcut fusion rules for the derivation of circular and higher-order programsShortcut fusionCircular and higher-order programmingMonadic computationsFunctional programs often combine separate parts using intermediate data structures for communicating results. Programs so defined are modular, easier to understand and maintain, but suffer from inefficiencies due to the generation of those gluing data structures. To eliminate such redundant data structures, some program transformation techniques have been proposed. One such technique is shortcut fusion, and has been studied in the context of both pure and monadic functional programs. In this paper, we study several shortcut fusion extensions, so that, alternatively, circular or higher-order programs are derived. These extensions are also provided for effect-free programs and monadic ones. Our work results in a set of generic calculation rules, that are widely applicable, and whose correctness is formally established.Fundação para a Ciência e a TecnologiaUniversidade do MinhoPardo, AlbertoFernandes, João Paulo Sousa FerreiraSaraiva, João2011-06-012011-06-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/articleapplication/pdfhttp://hdl.handle.net/1822/70349eng1388-36901573-055710.1007/s10990-011-9076-xhttps://link.springer.com/journal/10990/volumes-and-issues/24-1info:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2024-05-11T05:07:19Zoai:repositorium.sdum.uminho.pt:1822/70349Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T15:08:42.386930Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse |
| dc.title.none.fl_str_mv |
Shortcut fusion rules for the derivation of circular and higher-order programs |
| title |
Shortcut fusion rules for the derivation of circular and higher-order programs |
| spellingShingle |
Shortcut fusion rules for the derivation of circular and higher-order programs Pardo, Alberto Shortcut fusion Circular and higher-order programming Monadic computations |
| title_short |
Shortcut fusion rules for the derivation of circular and higher-order programs |
| title_full |
Shortcut fusion rules for the derivation of circular and higher-order programs |
| title_fullStr |
Shortcut fusion rules for the derivation of circular and higher-order programs |
| title_full_unstemmed |
Shortcut fusion rules for the derivation of circular and higher-order programs |
| title_sort |
Shortcut fusion rules for the derivation of circular and higher-order programs |
| author |
Pardo, Alberto |
| author_facet |
Pardo, Alberto Fernandes, João Paulo Sousa Ferreira Saraiva, João |
| author_role |
author |
| author2 |
Fernandes, João Paulo Sousa Ferreira Saraiva, João |
| author2_role |
author author |
| dc.contributor.none.fl_str_mv |
Universidade do Minho |
| dc.contributor.author.fl_str_mv |
Pardo, Alberto Fernandes, João Paulo Sousa Ferreira Saraiva, João |
| dc.subject.por.fl_str_mv |
Shortcut fusion Circular and higher-order programming Monadic computations |
| topic |
Shortcut fusion Circular and higher-order programming Monadic computations |
| description |
Functional programs often combine separate parts using intermediate data structures for communicating results. Programs so defined are modular, easier to understand and maintain, but suffer from inefficiencies due to the generation of those gluing data structures. To eliminate such redundant data structures, some program transformation techniques have been proposed. One such technique is shortcut fusion, and has been studied in the context of both pure and monadic functional programs. In this paper, we study several shortcut fusion extensions, so that, alternatively, circular or higher-order programs are derived. These extensions are also provided for effect-free programs and monadic ones. Our work results in a set of generic calculation rules, that are widely applicable, and whose correctness is formally established. |
| publishDate |
2011 |
| dc.date.none.fl_str_mv |
2011-06-01 2011-06-01T00:00:00Z |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/article |
| format |
article |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/1822/70349 |
| url |
http://hdl.handle.net/1822/70349 |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.relation.none.fl_str_mv |
1388-3690 1573-0557 10.1007/s10990-011-9076-x https://link.springer.com/journal/10990/volumes-and-issues/24-1 |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.source.none.fl_str_mv |
reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia instacron:RCAAP |
| instname_str |
FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| instacron_str |
RCAAP |
| institution |
RCAAP |
| reponame_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| collection |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository.name.fl_str_mv |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| repository.mail.fl_str_mv |
info@rcaap.pt |
| _version_ |
1833595126484566016 |