Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Michael Faes

dblp:228/5383 · DBLP profile ↗
← Back
1ranked-venue papers
1as first author
0since 2021 · last 2018
0009-0007-9531-6014ORCID · reported

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Concurrent programming · 50% Programming languages and type systems · 50%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Parallel and multicore computing · 100%

Topics — the 3 heaviest of 3, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Concurrent programming › deterministic execution
deterministic parallelism
0.312018
Concurrency-aware object-oriented programming with roles · Proc. ACM Program. Lang. 2018
Programming languages and type systems
object-oriented programming
0.312018
Concurrency-aware object-oriented programming with roles · Proc. ACM Program. Lang. 2018
Parallel and multicore computing
parallel programming models
0.112018
Concurrency-aware object-oriented programming with roles · Proc. ACM Program. Lang. 2018

Methods — techniques the papers use, named apart from their topics

slicing · 0.7role transitions · 0.7guarding · 0.7
YearPublicationVenuePosition
2018 Concurrency-aware object-oriented programming with roles
abstract
Object-oriented Programming has been effective in reducing code complexity in sequential programs, but in current practice, concurrent programs still present a number of challenges. We present here a model of object-oriented programming that identifies concurrent tasks and the relationship between objects and tasks , effectively making objects concurrency-aware . This awareness is formalized in a parallel programming model where every object plays a role in every task (e.g., the readonly role). When an object is shared with a new task, it adapts to the new sharing pattern by changing its roles, and therefore its behavior, i.e., the operations that can be performed with this object. This mechanism can be leveraged to prevent interfering accesses from concurrently executing tasks, and therefore makes parallel execution deterministic. To this end, we present a role-based programming language that includes several novel concepts (role transitions, guarding, slicing) to enable practical, object-oriented deterministic parallel programming. We show that this language can be used to safely implement programs with a range of different parallel patterns. The implementations to 8 widely used programming problems achieve substantial parallel speedups and demonstrate that this approach delivers performance roughly on par with manually synchronized implementations.
Michael Faes, Thomas R. Gross
Proc. ACM Program. Lang.1