2019
DOI: 10.1007/978-3-030-21485-2_6
|View full text |Cite
|
Sign up to set email alerts
|

Playing with Bisimulation in Erlang

Abstract: Erlang is a functional and concurrent programming language. The aim of this paper is to investigate basic properties of the Erlang concurrency model, which is based on asynchronous communication through mailboxes accessed via pattern matching. To achieve this goal, we consider Core Erlang (which is an intermediate step in Erlang compilation) and we define, on top of its operational semantics, an observational semantics following the approach used to define asynchronous bisimulation for the π-calculus. Our work… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
14
0

Year Published

2020
2020
2024
2024

Publication Types

Select...
3
2
1

Relationship

0
6

Authors

Journals

citations
Cited by 7 publications
(14 citation statements)
references
References 31 publications
0
14
0
Order By: Relevance
“…In order to reuse existing results, we have reviewed the extensive related work on formalisations of both Erlang [6,7,9,15] and Core Erlang [5,8,[10][11][12][13][14], and tried to incorporate ideas from all of these sources. We have decided to build the formalisation of Core Erlang as a stepping stone toward the definition of the entire Erlang language.…”
Section: Related Workmentioning
confidence: 99%
“…In order to reuse existing results, we have reviewed the extensive related work on formalisations of both Erlang [6,7,9,15] and Core Erlang [5,8,[10][11][12][13][14], and tried to incorporate ideas from all of these sources. We have decided to build the formalisation of Core Erlang as a stepping stone toward the definition of the entire Erlang language.…”
Section: Related Workmentioning
confidence: 99%
“…[11] describes function applications only for named functions. There is another notable difference in the existing formalisations from the syntactic point of view: some define values as a subclass of expressions by representing them as a distinct syntactic category [6,7,15,18], while others define values as "ground patterns" [11][12][13]16], that is as a subset of patterns. Both approaches have their advantages and disadvantages, and we discuss this question in more detail in Section 3.…”
Section: Related Workmentioning
confidence: 99%
“…We principally used the work by Lanese et al on defining reversible semantics for Erlang [11][12][13]16], by defining a language "basically equivalent to a subset of Core Erlang" [16]. Although they do not take Core Erlang functions and their closures into consideration (except for top-level functions), which we needed to define from scratch, their work proved to be a good starting point for defining a big-step operational semantics.…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations