Show simple item record

dc.contributor.advisorWadler, Philip
dc.contributor.advisorSannella, Don
dc.contributor.authorHe, Jiansen
dc.date.accessioned2015-02-16T16:29:07Z
dc.date.available2015-02-16T16:29:07Z
dc.date.issued2014-11-27
dc.identifier.urihttp://hdl.handle.net/1842/9933
dc.description.abstractThe 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_US
dc.language.isoenen_US
dc.publisherThe University of Edinburghen_US
dc.relation.hasversionHE, J. (2013). Freebench. https://github.com/Jiansen/FreeBench.en_US
dc.relation.hasversionHE, J. (2014). TAkka. https://github.com/Jiansen/TAkka.en_US
dc.relation.hasversionHE, J. (2014). TAkka Play. https://github.com/Jiansen/TAkka-Play.en_US
dc.relation.hasversionHe, J., Wadler, P., and Trinder, P. (2014). Typecasting Actors: from Akka to Takka. Scala 2014.en_US
dc.subjectactor-based applicationsen_US
dc.subjectAkkaen_US
dc.subjectconcurrent programsen_US
dc.subjectTAkkaen_US
dc.titleType-parameterized actors and their supervisionen_US
dc.typeThesis or Dissertationen_US
dc.type.qualificationlevelDoctoralen_US
dc.type.qualificationnameMPhil Master of Philosophyen_US


Files in this item

This item appears in the following Collection(s)

Show simple item record