| Nome: | Descrição: | Tamanho: | Formato: | |
|---|---|---|---|---|
| 1.1 MB | Adobe PDF |
Autores
Orientador(es)
Resumo(s)
The continuous evolution of programming languages is driven by the quest for type
safety, expressiveness, and modularity. Among the various paradigms, session types have
emerged as a powerful abstraction for structuring communication-based programming,
ensuring that interactions adhere to predefined protocols. Previous work has introduced
a functional language with session-based concurrency. However, this language lacked a
system for defining modules and a standard library to support development.
This thesis aims to address these limitations by implementing a module system in
the language, improving its modularity, maintainability, and organization. Additionally,
the creation of a standard library provides reusable functionality and assists the user in
building programs. In order to demonstrate the capabilities of the module system and of
the standard library, a set of examples was developed.
A evolução contínua das linguagens de programação é impulsionada pela busca por segurança de tipo, expressividade e modularidade. Entre os vários paradigmas, os tipos de sessão surgiram como uma abstração poderosa para estruturar a programação baseada em comunicação, garantindo que as interações sigam protocolos predefinidos. Trabalhos anteriores introduziram uma linguagem funcional com concurrência baseada em sessão. No entanto, essa linguagem não tinha um sistema para definir módulos e uma biblioteca padrão para dar suporte ao desenvolvimento. Esta tese visa abordar essas limitações implementando um sistema de módulos na linguagem, melhorando sua modularidade, manutenibilidade e organização. Além disso, a criação de uma biblioteca padrão fornece funcionalidade reutilizável e auxilia o usuário na construção de programas. Para demonstrar as capacidades do sistema de módulos e da biblioteca padrão, um conjunto de exemplos foi desenvolvido.
A evolução contínua das linguagens de programação é impulsionada pela busca por segurança de tipo, expressividade e modularidade. Entre os vários paradigmas, os tipos de sessão surgiram como uma abstração poderosa para estruturar a programação baseada em comunicação, garantindo que as interações sigam protocolos predefinidos. Trabalhos anteriores introduziram uma linguagem funcional com concurrência baseada em sessão. No entanto, essa linguagem não tinha um sistema para definir módulos e uma biblioteca padrão para dar suporte ao desenvolvimento. Esta tese visa abordar essas limitações implementando um sistema de módulos na linguagem, melhorando sua modularidade, manutenibilidade e organização. Além disso, a criação de uma biblioteca padrão fornece funcionalidade reutilizável e auxilia o usuário na construção de programas. Para demonstrar as capacidades do sistema de módulos e da biblioteca padrão, um conjunto de exemplos foi desenvolvido.
Descrição
Palavras-chave
Modularity Functional Language Session Types Standard Library
