How to write parallel programs: a guide to the perplexed
ACM Computing Surveys (CSUR)
The definition of Standard ML
Facile: a symmetric integration of concurrent and functional programming
International Journal of Parallel Programming
The semantics of programming languages: an elementary introduction using structural operational semantics
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
CML: A higher concurrent language
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
An Effective Implementation for the Generalized Input-Output Construct of CSP
ACM Transactions on Programming Languages and Systems (TOPLAS)
First-Class Synchronous Operations in Standard ML
First-Class Synchronous Operations in Standard ML
Procs and locks: a portable multiprocessing platform for standard ML of New Jersey
PPOPP '93 Proceedings of the fourth ACM SIGPLAN symposium on Principles and practice of parallel programming
Semantics for communication primitives in a polymorphic language
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Higher-order concurrent programs with finite communication topology (extended abstract)
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Analyzing the communication topology of concurrent programs
PEPM '95 Proceedings of the 1995 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
A theory of weak bisimulation for core CML
Proceedings of the first ACM SIGPLAN international conference on Functional programming
An operational semantics for parallel lazy evaluation
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
Enhanced operational semantics: a tool for describing and analyzing concurrent systems
ACM Computing Surveys (CSUR)
Nordic Journal of Computing
A Protocol for Multi-Threaded Processes with Choice in pi-Calculus
ICCS '01 Proceedings of the International Conference on Computational Science-Part II
MFCS '99 Proceedings of the 24th International Symposium on Mathematical Foundations of Computer Science
AMAST '02 Proceedings of the 9th International Conference on Algebraic Methodology and Software Technology
Partial Evaluation of Concurrent Programs
Euro-Par '01 Proceedings of the 7th International Euro-Par Conference Manchester on Parallel Processing
Logical Specification of Operational Semantics
CSL '99 Proceedings of the 13th International Workshop and 8th Annual Conference of the EACSL on Computer Science Logic
A Theory of Bisimulation for a Fragment of Concurrent ML with Local Names
LICS '00 Proceedings of the 15th Annual IEEE Symposium on Logic in Computer Science
Relating operational and denotational semantics for input/output effects
Mathematical Structures in Computer Science
A theory of weak bisimulation for Core CML
Journal of Functional Programming
A theory of bisimulation for a fragment of concurrent ML with local names
Theoretical Computer Science
A model of cooperative threads
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Efficient parallel programming in Poly/ML and Isabelle/ML
Proceedings of the 5th ACM SIGPLAN workshop on Declarative aspects of multicore programming
Hi-index | 0.00 |
We present a set of concurrency primitives for Standard ML. We define these by giving the transitional semantics of a simple language. We prove that our semantics preserves the expected behaviour of sequential programs. We also show that we can define stores as processes, such that the representation has the same behaviour as a direct definition. These proofs are the first steps towards integrating our semantics with the full definition of Standard ML.