Edinburgh Research Archive

Type-parameterized actors and their supervision

dc.contributor.advisor
Wadler, Philip
en
dc.contributor.advisor
Sannella, Don
en
dc.contributor.author
He, Jiansen
en
dc.date.accessioned
2015-02-16T16:29:07Z
dc.date.available
2015-02-16T16:29:07Z
dc.date.issued
2014-11-27
dc.description.abstract
The robustness of actor-based concurrent applications can be improved upon by (i) employing failure recovery mechanisms such as the supervision principle, or (ii) using typed messages to prevent ill-typed communication. This thesis explores to what extent the supervision principle can work with typed messages. This thesis evaluates the hypothesis by building a new library called TAkka in the Scala language on top of the existing Akka library, where Akka provides supervised actors and TAkka adds typed messaging. The TAkka library mixes static and dynamic type checking to make sure that dynamically typed distributed resources and statically typed local resources have consistent types. Our notion of typed actor can publish itself as different types when used by different parties so that messages of unexpected types are prevented at the senders’ side. In TAkka, messages for supervision purposes are treated in a special way so that a supervisor can interact with child actors of different types. This thesis evaluates the TAkka library by porting 23 small and medium sized Akka applications to their TAkka equivalents. Results show that Akka programs can be gradually upgraded to TAkka equivalents with minimal runtime and code size overheads. Finally, TAkka includes two auxiliary libraries for reliability assessment. This thesis confirms that the supervision principle and typed messages can be merged in an actor library for building real world applications.
en
dc.identifier.uri
http://hdl.handle.net/1842/9933
dc.language.iso
en
dc.publisher
The University of Edinburgh
en
dc.relation.hasversion
HE, J. (2013). Freebench. https://github.com/Jiansen/FreeBench.
en
dc.relation.hasversion
HE, J. (2014). TAkka. https://github.com/Jiansen/TAkka.
en
dc.relation.hasversion
HE, J. (2014). TAkka Play. https://github.com/Jiansen/TAkka-Play.
en
dc.relation.hasversion
He, J., Wadler, P., and Trinder, P. (2014). Typecasting Actors: from Akka to Takka. Scala 2014.
en
dc.subject
actor-based applications
en
dc.subject
Akka
en
dc.subject
concurrent programs
en
dc.subject
TAkka
en
dc.title
Type-parameterized actors and their supervision
en
dc.type
Thesis or Dissertation
en
dc.type.qualificationlevel
Doctoral
en
dc.type.qualificationname
MPhil Master of Philosophy
en

Files

Original bundle

Now showing 1 - 3 of 3
Name:
He2014.pdf
Size:
1.21 MB
Format:
Adobe Portable Document Format
Description:
Name:
PrivateTAkka files.zip
Size:
86.89 KB
Format:
Unknown data format
Description:
Name:
TAkka files.zip
Size:
28.84 MB
Format:
Unknown data format
Description:

This item appears in the following Collection(s)