A current challenge for programming language research is to design and implement multithreaded low-level languages providing static guarantees for memory safety and freedom from data races. Towards this goal, in this paper we present such a language and its type system. Our language guarantees memory safety by employing region-based memory management. Unlike other similar languages employing regions, our regions are organized in a hierarchical manner so that each region is owned by a single parent region and may contain multiple children regions. This structure imposes constraints over region capability manipulation. In this setting, we allow early region deallocation and thus overcome the restrictions of LIFO region lifetimes. Our type sys...
Applications written for distributed-memory parallel archi-tectures must partition their data to ena...
Cyclone is a type-safe programming language intended for applications requiring control over memory ...
Aliasing is a vital concept of programming, but it comes with a plethora of challenging issues, such...
We present the design of a formal low-level multithreaded language with advanced region-based memory...
A challenge for programming language research is to design and implement multi-threaded low-level la...
We present the design of a formal low-level multi-threaded lan-guage with advanced region-based memo...
Region-based memory management is an alternative to standard tracing garbage collection that makes o...
We extend Cyclone, a type-safe polymorphic language at the C level of abstraction, with threads and ...
An increasing number of systems rely on programming lan-guage technology to ensure safety and securi...
We propose a type system to guarantee safe resource deal-location for shared-memory concurrent progr...
A desirable concurrency semantics to provide for programs is region serializability. This strong sem...
As a means of transmitting not only data but also code encapsulated within functions, higher-order c...
Cyclone is a polymorphic, type-safe programming language derived from C\@. The primary design goa...
We present a destruction-aware type system for the functional lan-guage Safe, which is a first-order...
Abstract. Region-based memory management has been proposed as a viable alternative to garbage collec...
Applications written for distributed-memory parallel archi-tectures must partition their data to ena...
Cyclone is a type-safe programming language intended for applications requiring control over memory ...
Aliasing is a vital concept of programming, but it comes with a plethora of challenging issues, such...
We present the design of a formal low-level multithreaded language with advanced region-based memory...
A challenge for programming language research is to design and implement multi-threaded low-level la...
We present the design of a formal low-level multi-threaded lan-guage with advanced region-based memo...
Region-based memory management is an alternative to standard tracing garbage collection that makes o...
We extend Cyclone, a type-safe polymorphic language at the C level of abstraction, with threads and ...
An increasing number of systems rely on programming lan-guage technology to ensure safety and securi...
We propose a type system to guarantee safe resource deal-location for shared-memory concurrent progr...
A desirable concurrency semantics to provide for programs is region serializability. This strong sem...
As a means of transmitting not only data but also code encapsulated within functions, higher-order c...
Cyclone is a polymorphic, type-safe programming language derived from C\@. The primary design goa...
We present a destruction-aware type system for the functional lan-guage Safe, which is a first-order...
Abstract. Region-based memory management has been proposed as a viable alternative to garbage collec...
Applications written for distributed-memory parallel archi-tectures must partition their data to ena...
Cyclone is a type-safe programming language intended for applications requiring control over memory ...
Aliasing is a vital concept of programming, but it comes with a plethora of challenging issues, such...