Publicação
Recursion patterns and time-analysis
| Resumo: | This paper explores some ideas concerning the time-analysis of functional programs defined by instantiating typical recursion patterns such as folds, unfolds, and hylomorphisms. The concepts in this paper are illustrated through a rich set of examples in the Haskell programming language. We concentrate on unfolds and folds (also known as anamorphisms and catamorphisms respectively) of recursively defined types, as well as the more general hylomorphism pattern. For the latter, we use as case-studies two famous sorting algorithms, mergesort and quicksort. Even though time analysis is not compositional, we argue that splitting functions to expose the explicit construction of the recursion tree and its later consumption helps with this analysis. |
|---|---|
| Autores principais: | Barbosa, Manuel |
| Outros Autores: | Cunha, Alcino; Pinto, Jorge Sousa |
| Assunto: | Functional programming Time analysis Recursion patterns |
| Ano: | 2005 |
| País: | Portugal |
| Tipo de documento: | artigo |
| Tipo de acesso: | acesso aberto |
| Instituição associada: | Universidade do Minho |
| Idioma: | inglês |
| Origem: | RepositóriUM - Universidade do Minho |
Registos relacionados
article Visual programming with recursion patterns in interaction nets
por: Mackie, Ian
Publicado em: (2007)
por: Mackie, Ian
Publicado em: (2007)
article Algebraic specialization of generic functions for recursive types
por: Cunha, Alcino
Publicado em: (2011)
por: Cunha, Alcino
Publicado em: (2011)
article Recursive calculation of time to ruin distributions
por: Cardoso, Rui M. R.
Publicado em: (2002)
por: Cardoso, Rui M. R.
Publicado em: (2002)
article Recursive parameter estimation algorithms
por: Coelho, João Paulo
Publicado em: (2004)
por: Coelho, João Paulo
Publicado em: (2004)
book Holonic recursiveness with multi-agent system technologies
por: Suarez, Sonia
Publicado em: (2013)
por: Suarez, Sonia
Publicado em: (2013)
groups A Recursion-Theoretic Characterization of the Probabilistic Class PP
por: Dal Lago, Ugo
Publicado em: (2021)
por: Dal Lago, Ugo
Publicado em: (2021)
school Applications of real recursive infinite limits
por: Gomes, Luís Mendes
Publicado em: (2007)
por: Gomes, Luís Mendes
Publicado em: (2007)
article Enhancing excel business tools with additional relational and recursive capabilities
por: Ramos, P.
Publicado em: (2021)
por: Ramos, P.
Publicado em: (2021)
school Process and deconstruction: recursive structures between kitchen and design
por: Laranjeira, Maria Inês dos Santos
Publicado em: (2019)
por: Laranjeira, Maria Inês dos Santos
Publicado em: (2019)
school Recursive neuro fuzzy techniques for online identification and control
por: Oliveira, Tiago Miguel Brites
Publicado em: (2013)
por: Oliveira, Tiago Miguel Brites
Publicado em: (2013)
school Monetary policy evolution in Turkey: recursive analysis of inflation responsiveness through structural breaks and unorthodox strategies
por: Martins, João Dias
Publicado em: (2025)
por: Martins, João Dias
Publicado em: (2025)
article Phase Drift Estimation and Symbol Detection in Digital Communications: A Stochastic Recursive Filtering Approach
por: Bioucas-Dias, José
Publicado em: (2012)
por: Bioucas-Dias, José
Publicado em: (2012)
article Generic point-free lenses
por: Pacheco, Hugo
Publicado em: (2010)
por: Pacheco, Hugo
Publicado em: (2010)
article On the moments of ruin and recovery times
por: Reis, Alfredo D. Egídio dos
Publicado em: (2000)
por: Reis, Alfredo D. Egídio dos
Publicado em: (2000)
assignment Analog Computers and the Iteration Functional
por: Campagnolo, Manuel Lameiras
Publicado em: (1998)
por: Campagnolo, Manuel Lameiras
Publicado em: (1998)
school Pattern-Matching and other advanced topics in the Freest Programming Language
por: Roque,João Filipe Carvalho
Publicado em: (2025)
por: Roque,João Filipe Carvalho
Publicado em: (2025)
school Patterns in financial markets: Dynamic time warping
por: Coelho, Mariana Sátiro
Publicado em: (2012)
por: Coelho, Mariana Sátiro
Publicado em: (2012)
article Polytipic recursion patterns
por: Barbosa, L. S.
Publicado em: (2000)
por: Barbosa, L. S.
Publicado em: (2000)
article Visualization in pattern generalization: potential and challenges
por: Barbosa, Ana
Publicado em: (2015)
por: Barbosa, Ana
Publicado em: (2015)
book Specifying software services for fog computing architectures using recursive model transformations
por: Santos, Nuno
Publicado em: (2018)
por: Santos, Nuno
Publicado em: (2018)
school Structural breaks and time-varying granger-causality: testing the spanning hypothesis
por: Inverneiro, Miguel Teixeira Rodrigues
Publicado em: (2024)
por: Inverneiro, Miguel Teixeira Rodrigues
Publicado em: (2024)
article Refinement of software architectures by recursive model transformations
por: Fernandes, João M.
Publicado em: (2006)
por: Fernandes, João M.
Publicado em: (2006)
assignment Patterns for Programming in the Semantic Web
por: Gaspar, Graça
Publicado em: (2012)
por: Gaspar, Graça
Publicado em: (2012)
school Analysis of support for modularity in object teams based on design patterns
por: Gomes, João Luís Lopes
Publicado em: (2009)
por: Gomes, João Luís Lopes
Publicado em: (2009)
article Time trends and geographic patterns of mortality due to tracheal, bronchus, and lung cancer in Portugal
por: Teixeira, Cristina
Publicado em: (2024)
por: Teixeira, Cristina
Publicado em: (2024)
article Spatio-temporal patterns of pressure over the North Atlantic
por: Antunes, Sílvia
Publicado em: (2010)
por: Antunes, Sílvia
Publicado em: (2010)
article Reusable aspect-oriented implementations of concurrency patterns and mechanisms
por: Sobral, João Luís Ferreira
Publicado em: (2006)
por: Sobral, João Luís Ferreira
Publicado em: (2006)
school Tackling enterprise software development using domain-driven design and patterns
por: Wlodarczyk, Marcin
Publicado em: (2024)
por: Wlodarczyk, Marcin
Publicado em: (2024)
category Ciprofloxacin susceptibility patterns of planktonic and sessile S. aureus, E. coli, and P. aeruginosa – effect of the exposure time
por: Parente, M.
Publicado em: (2010)
por: Parente, M.
Publicado em: (2010)
school Assessment of Octave’s OO features based on GoF patterns
por: Escaleira, Diogo de Almeida
Publicado em: (2023)
por: Escaleira, Diogo de Almeida
Publicado em: (2023)
groups Visual patterns and the development of creativity and functional reasoning
por: Tavares, Débora
Publicado em: (2013)
por: Tavares, Débora
Publicado em: (2013)
article Visual patterns and the development of creativity and functional reasoning
por: Tavares, Débora
Publicado em: (2014)
por: Tavares, Débora
Publicado em: (2014)
school Time-based hypermedia processing and pattern system
por: Lopes, Rui Miguel do Nascimento Dias
Publicado em: (2006)
por: Lopes, Rui Miguel do Nascimento Dias
Publicado em: (2006)
article Higher-order lazy functional slicing
por: Rodrigues, Nuno F.
Publicado em: (2007)
por: Rodrigues, Nuno F.
Publicado em: (2007)
groups An integer programming framework for sequencing cutting patterns based on interval graph completion
por: Lopes, Isabel Cristina
Publicado em: (2011)
por: Lopes, Isabel Cristina
Publicado em: (2011)
article Program slicing by calculation
por: Barbosa, L. S.
Publicado em: (2006)
por: Barbosa, L. S.
Publicado em: (2006)
article Patterns for Interfacing between Logic Programs and Multiple Ontologies
por: Cruz‐Filipe, L.
Publicado em: (2013)
por: Cruz‐Filipe, L.
Publicado em: (2013)
article An ultra-short-term wind speed forecasting model based on time scale recognition and dynamic adaptive modeling
por: Zhen, Zhao
Publicado em: (2021)
por: Zhen, Zhao
Publicado em: (2021)
draft Recursive preferences, consumption smoothing and risk premium
por: Armada, Manuel José da Rocha
Publicado em: (2014)
por: Armada, Manuel José da Rocha
Publicado em: (2014)
book Introductory chapter: time series analysis
por: Viana, Cláudia
Publicado em: (2024)
por: Viana, Cláudia
Publicado em: (2024)
Registos relacionados
-
article Visual programming with recursion patterns in interaction nets
por: Mackie, Ian
Publicado em: (2007) -
article Algebraic specialization of generic functions for recursive types
por: Cunha, Alcino
Publicado em: (2011) -
article Recursive calculation of time to ruin distributions
por: Cardoso, Rui M. R.
Publicado em: (2002) -
article Recursive parameter estimation algorithms
por: Coelho, João Paulo
Publicado em: (2004) -
book Holonic recursiveness with multi-agent system technologies
por: Suarez, Sonia
Publicado em: (2013)