Sistemas de Tipos para Programação Concorrente Um Estudo de Caso
Resumo
O presente trabalho apresenta um estudo de caso da representação de um programa em Go em um cálculo de processos, como uma primeira abordagem para a proposta de um sistema de tipos de sessão para a linguagem.
Referências
Bocchi, L., Murgia, M., Vasconcelos, V. T., and Yoshida, N. (2019). Asynchronous timed session types from duality to time-sensitive processes. In ESOP, volume 11423 of Lecture Notes in Computer Science, pages 583–610. Springer.
Demangeon, R. and Honda, K. (2012). Nested protocols in session types. In CONCUR, volume 7454 of Lecture Notes in Computer Science, pages 272–286. Springer.
Donovan, A. A. and Kernighan, B. W. (2015). The Go programming language. Addison-Wesley Professional.
Echarren Serrano, B. (2020). Nested Multiparty Session Programming in Go. Master’s thesis, Imperial College London. Disponível em: [link].
Geraldo, J. M. P. D. C. R. (2022). Making Session Types Go. Master’s thesis, NOVA University Lisbon. Disponível em: [link].
Go Language (2009). Effective Go. Disponível em: [link]. Último acesso em 17 de Agosto de 2023.
Kobayashi, N. (2002). Type systems for concurrent programs. In 10th Anniversary Colloquium of UNU/IIST, volume 2757 of Lecture Notes in Computer Science, pages 439–453. Springer.
Lange, J., Ng, N., Toninho, B., and Yoshida, N. (2017). Fencing off Go: liveness and safety for channel-based programming. In POPL, pages 748–761. ACM.
Restrepo, C. A. R., Jaramillo, J. C., and Pérez, J. A. (2023). Session-based concurrency in maude: Executable semantics and type checking. Journal of Logical and Algebraic Methods in Programming, 133:100872.
Vasconcelos, V. T. (2012). Fundamentals of session types. Information and Computation, 217:52–70.
Demangeon, R. and Honda, K. (2012). Nested protocols in session types. In CONCUR, volume 7454 of Lecture Notes in Computer Science, pages 272–286. Springer.
Donovan, A. A. and Kernighan, B. W. (2015). The Go programming language. Addison-Wesley Professional.
Echarren Serrano, B. (2020). Nested Multiparty Session Programming in Go. Master’s thesis, Imperial College London. Disponível em: [link].
Geraldo, J. M. P. D. C. R. (2022). Making Session Types Go. Master’s thesis, NOVA University Lisbon. Disponível em: [link].
Go Language (2009). Effective Go. Disponível em: [link]. Último acesso em 17 de Agosto de 2023.
Kobayashi, N. (2002). Type systems for concurrent programs. In 10th Anniversary Colloquium of UNU/IIST, volume 2757 of Lecture Notes in Computer Science, pages 439–453. Springer.
Lange, J., Ng, N., Toninho, B., and Yoshida, N. (2017). Fencing off Go: liveness and safety for channel-based programming. In POPL, pages 748–761. ACM.
Restrepo, C. A. R., Jaramillo, J. C., and Pérez, J. A. (2023). Session-based concurrency in maude: Executable semantics and type checking. Journal of Logical and Algebraic Methods in Programming, 133:100872.
Vasconcelos, V. T. (2012). Fundamentals of session types. Information and Computation, 217:52–70.
Publicado
21/07/2024
Como Citar
RIBEIRO, Cláudio Henrique Oliveira; SILVESTRE, Bruno; VENTURA, Daniel.
Sistemas de Tipos para Programação Concorrente Um Estudo de Caso. In: WORKSHOP BRASILEIRO DE LÓGICA (WBL), 5. , 2024, Brasília/DF.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2024
.
p. 27-37.
ISSN 2763-8731.
DOI: https://doi.org/10.5753/wbl.2024.3206.