Jafroodi, Nima (2008) A type system for the Erasmus language. Masters thesis, Concordia University.
Preview |
Text (application/pdf)
3MBMR40941.pdf - Accepted Version |
Abstract
Our objective is to construct a suitable type system for the Erasmus language by understanding the notion of type in programming languages, present a model of typed, polymorphic programming language that reflects recent research in type theory. This type system gives us a strong tool to explain the behavior of this language in a consistent framework by modeling features such as cells, processes, ports, protocols, messages, and message passing, which are the main heart of this programming language. The Erasmus language belongs to process oriented programming languages which is being developed by Peter Grogono at Concordia University and Brian Shearing at The Software Factory in England. This language is mainly based on cells, processes and their interactions and like object oriented languages; it provides both a framework and a motivation for exploring the interaction among the concept of type, data abstraction, and polymorphism. We develop a n-calculus-based model for this type system that allows us to explore these interactions in the simple setting. The evolution of languages from untyped universes to monomorphic and polymorphic type systems is reviewed. Different type systems of different programming languages are discussed and the mechanism for polymorphism such as overloading, coercion, subtyping, protocols satisfaction, and parameterization are also described. The typed n-calculus is augmented to include binding of types by quantification as well as binding types by abstraction. This typed n-calculus is augmented by universal quantification to model generic functions with type parameters, bounded quantification to provide explicit subtype parameters. In this way we obtain a simple and precise characterization of a powerful type system that includes abstract data types, parametric polymorphism, and subtyping relations in a single consistent framework. This augmented typed n-calculus is then used for the type system of the Erasmus language with which we are able to describe the features of this language, and a proof technique that will let us reason about the model
Divisions: | Concordia University > Gina Cody School of Engineering and Computer Science > Computer Science and Software Engineering |
---|---|
Item Type: | Thesis (Masters) |
Authors: | Jafroodi, Nima |
Pagination: | xi, 111 leaves : ill. ; 29 cm. |
Institution: | Concordia University |
Degree Name: | M. Comp. Sc. |
Program: | Computer Science and Software Engineering |
Date: | 2008 |
Thesis Supervisor(s): | Grogono, Peter |
Identification Number: | LE 3 C66C67M 2008 J34 |
ID Code: | 975726 |
Deposited By: | Concordia University Library |
Deposited On: | 22 Jan 2013 16:13 |
Last Modified: | 13 Jul 2020 20:08 |
Related URLs: |
Repository Staff Only: item control page