Dissertation/ Thesis
Behavioural APIs for Erlang processes
| Τίτλος: | Behavioural APIs for Erlang processes |
|---|---|
| Συγγραφείς: | Zahra, Gianluca (2020) |
| Στοιχεία εκδότη: | University of Malta Faculty of Information and Communication Technology. Department of Computer Science |
| Έτος έκδοσης: | 2020 |
| Συλλογή: | University of Malta: OAR@UM / L-Università ta' Malta |
| Θεματικοί όροι: | Application program interfaces (Computer software), Computer programming, ERLANG (Computer program language) |
| Περιγραφή: | B.SC.(HONS)COMP.SCI. ; Behavioural Application Programming Interfaces (APIs) (12) consist of the amalgation of traditional APIs with formal behavioural information related to their usage. These newer versions of APIs are frequently being utilised in concurrent systems whereby communication between numerous processes is required. Message-passing is one of the main forms of communication mechanisms that was deemed fit to be utilised throughout this dissertation. This thesis studies the behaviour of processes in a network and identifies the gap between existent approaches to message-passing communication systems and their implementation using the features available in Erlang-based programming languages. The foundational framework utilized throughout this study is the Mailbox Calculus, proposed by the ‘Liguoro and Padovani (16) in their paper entitled ‘Mailbox Types for Unordered Interactions’. This message-passing system provided the added benefits of ensuring certain software guarantees, including deadlock freedom, fault tolerance and mailbox compliance. In the first part of this thesis, the syntax of the Mailbox Calculus is translated into an appropriate formal definition which is then implemented in Elixir; an Erlang-based functional programming language. Additionally, slight modifications and extensions to this syntax were carried out in accordance with existent Elixir features. The implementation part is comprised of a lexer and a parser specifically created for the target language MC2Elixir; which is an adaptation of the Mailbox Calculus. In the second part of this thesis an interpreter and launcher are constructed test and verify the correctness of the implemented artefact. Elixir is inherently a weakly-typed language (33); thus, trying to find Elixir constructs corresponding to those in the strongly-typed Mailbox Calculus, was one of the main challenges encountered throughout this dissertation. Nonetheless, the final proposed system MC2Elixir visibly encompasses the main features of the Mailbox Calculus. ... |
| Τύπος εγγράφου: | bachelor thesis |
| Γλώσσα: | English |
| Relation: | Zahra, G. (2020). Behavioural APIs for Erlang processes (Bachelor's dissertation).; https://www.um.edu.mt/library/oar/handle/123456789/71908 |
| Διαθεσιμότητα: | https://www.um.edu.mt/library/oar/handle/123456789/71908 |
| Rights: | info:eu-repo/semantics/restrictedAccess ; The copyright of this work belongs to the author(s)/publisher. The rights of this work are as defined by the appropriate Copyright Legislation or as modified by any successive legislation. Users may access this work and can make use of the information contained in accordance with the Copyright Legislation provided that the author must be properly acknowledged. Further distribution or reproduction in any format is prohibited without the prior permission of the copyright holder. |
| Αριθμός Καταχώρησης: | edsbas.9965C38D |
| Βάση Δεδομένων: | BASE |
| Η περιγραφή δεν είναι διαθέσιμη |