Proceedings of the 13th ACM SIGPLAN International Conference on Functional Programming 2008
DOI: 10.1145/1411204.1411222
|View full text |Cite
|
Sign up to set email alerts
|

Transactional events for ML

Abstract: Transactional events (TE) are an approach to concurrent programming that enriches the first-class synchronous message-passing of Concurrent ML (CML) with a combinator that allows multiple messages to be passed as part of one all-or-nothing synchronization. Donnelly and Fluet (2006) designed and implemented TE as a Haskell library and demonstrated that it enables elegant solutions to programming patterns that are awkward or impossible in CML. However, both the definition and the implementation of TE relied fund… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
8
0

Year Published

2010
2010
2022
2022

Publication Types

Select...
5
2
1

Relationship

1
7

Authors

Journals

citations
Cited by 17 publications
(8 citation statements)
references
References 22 publications
0
8
0
Order By: Relevance
“…Concurrent ML, 79 an SML language extension that introduces first class events, event combinators, and language level threads, is the most widespread concurrency support. Parallel 80 (as part of the Manticore system 81 ), transactional, 82,83 and asynchronous 84 extensions exist for CML, allowing for the expression of many concurrent programming paradigms. F# belongs to the ML family and is implemented on .NET.…”
Section: Smlmentioning
confidence: 99%
“…Concurrent ML, 79 an SML language extension that introduces first class events, event combinators, and language level threads, is the most widespread concurrency support. Parallel 80 (as part of the Manticore system 81 ), transactional, 82,83 and asynchronous 84 extensions exist for CML, allowing for the expression of many concurrent programming paradigms. F# belongs to the ML family and is implemented on .NET.…”
Section: Smlmentioning
confidence: 99%
“…A configuration ‫݂݊ܥ‬ can execute to an unsafe configuration iff there is an execution [8]; let us explain why. Both TE and TE for ML support synchronous message passing.…”
Section: Definition 2 (Unsafe Execution)mentioning
confidence: 99%
“…In particular we show that our barrier and rendezvous abstractions do not deadlock when used in an atomic block. To enable an efficient implementation, CMT does not satisfy the completeness property [8] found in TE. Based on the transactional memory implementations TL2 [5] and DSTM2 [13], we present two efficient implementations of CMT.…”
Section: Our Approachmentioning
confidence: 99%