@inproceedings{2f7f9ba5b77a43f4ad3737f8d72101ba,
title = "Pure concurrent programming",
abstract = "Arvo is a new programming language focuses on concurrency. Its primary goal is to provide the programmer with an simple and concise way to design concurrent systems without explicitly identifying and differentiating concurrent and sequential sections. It does this by preventing the programmer from being able to explicitly define an order between statements or expressions. Thus Arvo conceptually launches all function calls concurrently, while preserving existing data dependencies. Required synchronization is driven purely by those data dependencies and unnecessary locks are avoided. Given that Arvo potentially launches large numbers of threads it also needs a simple way to statically determine when threads end. This paper introduces core concepts of Arvo, which constitute the foundation of its concurrency model. We will also investigate how (or if) expressiveness is being affected by Arvo's design choices.",
keywords = "Concurrency, compilers, programming languages",
author = "Wang, {Benjamin J.L.} and Zimmer, {Uwe R.}",
note = "Publisher Copyright: {\textcopyright} 2017 IEEE.; 31st IEEE International Parallel and Distributed Processing Symposium Workshops, IPDPSW 2017 ; Conference date: 29-05-2017 Through 02-06-2017",
year = "2017",
month = jun,
day = "30",
doi = "10.1109/IPDPSW.2017.150",
language = "English",
series = "Proceedings - 2017 IEEE 31st International Parallel and Distributed Processing Symposium Workshops, IPDPSW 2017",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
pages = "824--831",
booktitle = "Proceedings - 2017 IEEE 31st International Parallel and Distributed Processing Symposium Workshops, IPDPSW 2017",
address = "United States",
}