We present a compiler for a concurrent programming language, which utilizes linear typing to create a safer promise abstraction. The compiler is implemented in OCaml and produces source-level Java code. We provide example programs to demonstrate use of the language, as well as translations of incorrect JavaScript code from StackOverflow to showcase the ability of our language to catch many classes of bugs. Finally, we provide a minimal runtime environment to allow the execution of compiled programs
We report our experience in using two different languages to build the same software project. Specif...
AbstractThis paper formalizes the observable interface behavior of a concurrent, object-oriented lan...
Since the early 2000s, in order to keep up with the performance predictions of Moore's law, hardware...
In this paper, we introduce a new type system based on linear typing, and show how it can be incorpo...
This is the companion artifact for the ESOP23 paper Safe Session-Based Concurrency with Shared Line...
This artifact contains code illustrating the Covariant Conversions (CoCo) design pattern in Java, Sc...
This thesis is concerned with support at all levels for building highly concurrent and dynamic paral...
Tese de mestrado, Engenharia Informática (Engenharia de Software), Universidade de Lisboa, Faculdade...
This is the artifact for the OOPSLA'21 paper "Well-Typed Programs Can Go Wrong: A Study of Typing-Re...
This artifact consists of an SBT project with a Scala implementation of the MLscript programming lan...
International audienceInstead of a monolithic programming language trying to cover all features of i...
Modern programming languages provide libraries for concurrent data structures. For better performanc...
Programming languages are often designed as static, monolithic units. As a result, they are inflexib...
The design of concurrent programs has a reputation for being difficult, and thus potentially dangero...
Safe languages provide programming abstractions, like type and memory safety, to improve programmer ...
We report our experience in using two different languages to build the same software project. Specif...
AbstractThis paper formalizes the observable interface behavior of a concurrent, object-oriented lan...
Since the early 2000s, in order to keep up with the performance predictions of Moore's law, hardware...
In this paper, we introduce a new type system based on linear typing, and show how it can be incorpo...
This is the companion artifact for the ESOP23 paper Safe Session-Based Concurrency with Shared Line...
This artifact contains code illustrating the Covariant Conversions (CoCo) design pattern in Java, Sc...
This thesis is concerned with support at all levels for building highly concurrent and dynamic paral...
Tese de mestrado, Engenharia Informática (Engenharia de Software), Universidade de Lisboa, Faculdade...
This is the artifact for the OOPSLA'21 paper "Well-Typed Programs Can Go Wrong: A Study of Typing-Re...
This artifact consists of an SBT project with a Scala implementation of the MLscript programming lan...
International audienceInstead of a monolithic programming language trying to cover all features of i...
Modern programming languages provide libraries for concurrent data structures. For better performanc...
Programming languages are often designed as static, monolithic units. As a result, they are inflexib...
The design of concurrent programs has a reputation for being difficult, and thus potentially dangero...
Safe languages provide programming abstractions, like type and memory safety, to improve programmer ...
We report our experience in using two different languages to build the same software project. Specif...
AbstractThis paper formalizes the observable interface behavior of a concurrent, object-oriented lan...
Since the early 2000s, in order to keep up with the performance predictions of Moore's law, hardware...