Abstract

Programming language semantics plays an important role in the development of software technology by providing a coherent approach to the design and implementation of programming languages. Ry avoiding ad hoc techniques, such an approach seeks to provide an environment suitable for the interpretation of powerful yet flexible languages capable of greater modularity and polymorphic behavior. This in turn should lead to greater code reuse, reliability and maintenance so crucial to the future developement of large software systems. Algebraic methods have long provided a plenitude of roles in both defining issues and solving problems in the foundations of programming language semantics. In this paper we focus attention on the use of algebraic structures, particularly categories of algebras and monads, to describe partial data types and their corresponding computations. It has become increasingly evident with the proliferation of semantic categories that no one category is ideal for all purposes. Instead, what is proposed in this paper in the context of partial types is a systematic approach which constructs several categories of algebras and their corresponding adjunctions. The semantic content is then derived not only from the individual categories but from their functorial relationships. Recent attempts at dealing with partial operations on data types have led to the construction of categories of partial maps [ 11, 121. Earlier work had focused on the

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call