UCalgary Peripatetic Seminar: Melika Norouzbeygi
Topic
Type Classes in CaMPL
Speakers
Details
Overloading, which allows functions to exhibit different behaviors based on the types involved, is one of the most useful facilities of a typed programming language. In the Haskell programming language, this facility is provided by type classes. Type classes offer a systematic solution for overloading, providing uniform operations for arithmetic, equality, and displaying values, and so on. In addition, higher-order type classes are used to implement important more advanced structures such as functors and monads.
Categorical Message Passing Language (CaMPL) is a concurrent programming language based on a categorical semantic given by a linear actegory. CaMPL has with type inference for both sequential and concurrent programs. The sequential side of CaMPL is a functional-style programming language, while the concurrent side supports message passing between processes along channels with concurrent types called protocols.
In this presentation, first the importance of type classes will be discussed, then CaMPL will be introduced, and its different features will be explained. Finally, the process of integrating type classes into both sequential and concurrent tiers of CaMPL will be investigated.