A relational approach to strictness analysis for higher-order polymorphic functions
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Parametricity and local variables
Journal of the ACM (JACM)
From Algol to polymorphic linear lambda-calculus
Journal of the ACM (JACM)
On the Semantics of Fair Parallelism
Proceedings of the Abstract Software Specifications, 1979 Copenhagen Winter School
CSL '92 Selected Papers from the Workshop on Computer Science Logic
The semantics of local storage, or what makes the free-list free?(Preliminary Report)
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
A category-theoretic approach to the semantics of programming languages
A category-theoretic approach to the semantics of programming languages
Traces, Pomsets, Fairness and Full Abstraction for Communicating Processes
CONCUR '02 Proceedings of the 13th International Conference on Concurrency Theory
A pi-calculus Process Semantics of Concurrent Idealised ALGOL
FoSSaCS '99 Proceedings of the Second International Conference on Foundations of Software Science and Computation Structure, Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS'99
Syntactic control of concurrency
Theoretical Computer Science - Automata, languages and programming: Logic and semantics (ICALP-B 2004)
Variables as Resource for Shared-Memory Programs: Semantics and Soundness
Electronic Notes in Theoretical Computer Science (ENTCS)
Compositional model extraction for higher-order concurrent programs
TACAS'06 Proceedings of the 12th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Hi-index | 0.00 |
We consider a parallel Algol-like language, combining the /spl lambda/-calculus with shared-variable parallelism. We provide a denotational semantics for this language, simultaneously adapting the possible worlds model of Reynolds and Oles (1981, 1982) to the parallel setting and generalizing the "transition traces" model to the procedural setting. This semantics supports reasoning about safety and liveness properties of parallel programs, and validates a number of natural laws of program equivalence based on noninterference properties of local variables. We also provide a relationally parametric semantics, to permit reasoning about relation-preserving properties of programs, and adapting work of O'Hearn and Tennent (1995) to the parallel setting. This semantics supports standard methods of reasoning about representational independence. The clean design of the programming language and its semantics supports the orthogonality of procedures and shared-variable parallelism.