Stack-based typed assembly language
Journal of Functional Programming
A type system for preventing data races and deadlocks in the java virtual machine language: 1
Proceedings of the 2007 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
Spatial-behavioral types for concurrency and resource control in distributed systems
Theoretical Computer Science
ESOP'11/ETAPS'11 Proceedings of the 20th European conference on Programming languages and systems: part of the joint European conferences on theory and practice of software
Information and Computation
The type discipline of behavioral separation
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Hi-index | 0.00 |
Typed assembly languages have been designed to ensure safety on low-level code, avoiding the dynamic loading of erroneous code, generated by unreliable compilers, thus compromising the correct behavior of virtual machines and processors. Among the most challenging errors to detect are errors related to concurrent behaviors and thread synchronization. We present a typed intermediate language for a stack-based virtual machine, comprising a primitive object model and native support for concurrency. By using primitives to deal with concurrency, we establish a more abstract level where it is possible to represent and enforce a linear discipline on thread values, and pave the way for more sophisticated type based aliasing and concurrency analyses.