• JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
 
  Bookmark and Share
 
 
Tesis Doctoral
DOI
https://doi.org/10.11606/T.45.2023.tde-03112023-152323
Documento
Autor
Nombre completo
Alexandre Garcia de Oliveira
Instituto/Escuela/Facultad
Área de Conocimiento
Fecha de Defensa
Publicación
São Paulo, 2023
Director
Tribunal
Jaskelioff, Mauro Javier (Presidente)
Costa, Alberto Raúl Pardo
Mariano, Hugo Luiz
Uustalu, Tarmo
Wu, Nicolas
Título en inglés
Programming with monoidal profunctors and semiarrows
Palabras clave en inglés
Effectful monoidal profunctors
Functional programming
Monoidal profunctors
Moore machines
Semiarrows
Synchronous programming
Resumen en inglés
This work investigates monoidal profunctors and their extensions, such as effectful monoidal profunctors and semiarrows, as tools for reasoning and structuring pure functional programs from a categorical perspective and within a Haskell implementation. We approach them as monoids within a specific monoidal category of profunctors and as semiarrows in a semiarrow category. We examine the properties of this monoidal category and construct and implement the free monoidal profunctor. Furthermore, we detail the properties and laws of a semiarrow, deriving examples of its usage and highlighting its potential for effectively managing delays in synchronous programs. Moore machines serve as an illustrative example. Additional applications include optics and a monoidal profunctor structure-preserving connection between Moore machines, left scans, and left folds.
Título en portugués
Programando com profuntores monoidais e semiarrows
Palabras clave en portugués
Máquinas de Moore
Profunctores monoidais com efeitos colaterais
Profuntores monoidais
Programação funcional
Programação síncrona
Semiarrows
Resumen en portugués
Este trabalho investiga os profuntores monoidais e suas extensões, como profuntores monoidais com efeitos colaterais e semiarrow, como ferramentas para raciocinar e estruturar programas funcionais puros a partir de uma perspectiva categórica e dentro de uma implementação em Haskell. Abordamos-os como monoides dentro de uma categoria monoidal específica de profuntores e como semiarrows em uma categoria de semiarrow. Examinamos as propriedades dessa categoria monoidal e construímos e implementamos o profunctor monoidal livre. Além disso, detalhamos as propriedades e leis de um semiarrow, derivando exemplos de seu uso e destacando seu potencial para gerenciar efetivamente atrasos em programação síncrona. As máquinas de Moore servem como um exemplo ilustrativo. Aplicações adicionais incluem óptica de profuntores e conexões que preservam a estrutura de um profunctor monoidal entre máquinas de Moore, dobragens com acumulação à esquerda (scan) e dobragens simples à esquerda (fold)
 
ADVERTENCIA - La consulta de este documento queda condicionada a la aceptación de las siguientes condiciones de uso:
Este documento es únicamente para usos privados enmarcados en actividades de investigación y docencia. No se autoriza su reproducción con finalidades de lucro. Esta reserva de derechos afecta tanto los datos del documento como a sus contenidos. En la utilización o cita de partes del documento es obligado indicar el nombre de la persona autora.
Fecha de Publicación
2023-11-13
 
ADVERTENCIA: Aprenda que son los trabajos derivados haciendo clic aquí.
Todos los derechos de la tesis/disertación pertenecen a los autores
CeTI-SC/STI
Biblioteca Digital de Tesis y Disertaciones de la USP. Copyright © 2001-2024. Todos los derechos reservados.