Bend: Immutability and Native Parallelism as a Solution to Parallel Programming Challenges

  • Ramon C. Jales de Barros UFRN
  • Samuel Xavier de Souza UFRN

Resumo


With the physical limits of modern processors, parallel programming has become essential to fully harness the potential of current architectures. However, challenges such as race conditions and deadlocks increase the complexity of parallel development. Bend, a functional language with native parallelism, proposes an immutability-based approach to simplify this process. This article analyzes how immutability and native parallelism in Bend eliminate shared memory conflicts, enabling safe and effortless parallelism without explicit synchronization. Through a case study involving tree summation, we compare Bend with a mutable approach in C.

Referências

Adelusola, M. (2016). Scalability challenges in fault-tolerant parallel computing algorithms. —, pages —.

Andrews, G. R. (1999). Foundations of Multithreaded, Parallel, and Distributed Programming. Addison-Wesley, Reading, MA.

Bend Team (2025). Bend programming language: Guide.md. Available at: [link]. Accessed: 19 June 2025.

Dickerson, T. (2020). Persistent Data Structures for Efficient Concurrency. PhD thesis, University of Maryland, College Park, MD. Available at: [link].

Dung, P. A. and Hansen, M. R. (2011). A parallel approach to decision procedures for presburger arithmetic. In Proceedings of the 12th International Conference on Computer Aided Systems Theory (EUROCAST), pages 223–230. Springer. Available at: [link].

Maxwell (—). Computação paralela. Available at: [link]. Accessed: 19 June 2025.

Okasaki, C. (1999). Purely Functional Data Structures. Cambridge University Press, Cambridge, UK.

O’Sullivan, B., Goerzen, J., and Stewart, D. B. (2008). Real World Haskell. O’Reilly Media, Sebastopol, CA.

Taelin, V. (2025). Hvm2: A parallel evaluator for interaction combinators. Available at: [link]. Accessed: 19 June 2025.

Tanenbaum, A. S. and Bos, H. (2015). Modern Operating Systems. Pearson, Upper Saddle River, NJ, 4 edition.
Publicado
23/09/2025
BARROS, Ramon C. Jales de; SOUZA, Samuel Xavier de. Bend: Immutability and Native Parallelism as a Solution to Parallel Programming Challenges. In: WORKSHOP EM ENGENHARIA DE SOFTWARE PARA PROGRAMAÇÃO FUNCIONAL (SE4FP), 1. , 2025, Recife/PE. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2025 . p. 21-26. DOI: https://doi.org/10.5753/se4fp.2025.13667.