Partiality, cartesian closedness, and toposes
Information and Computation
Computational lambda-calculus and monads
Proceedings of the Fourth Annual Symposium on Logic in computer science
Notions of computation and monads
Information and Computation
The essence of functional programming
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Science of Computer Programming - Special issue on mathematics of program construction
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
Closed Freyd- and kappa-categories
ICAL '99 Proceedings of the 26th International Colloquium on Automata, Languages and Programming
Control categories and duality: on the categorical semantics of the lambda-mu calculus
Mathematical Structures in Computer Science
Premonoidal categories and notions of computation
Mathematical Structures in Computer Science
Combining effects: sum and tensor
Theoretical Computer Science - Clifford lectures and the mathematical foundations of programming semantics
Arrows, like Monads, are Monoids
Electronic Notes in Theoretical Computer Science (ENTCS)
A Semantics For Evaluation Logic
Fundamenta Informaticae
Hi-index | 0.00 |
Most often, in a categorical semantics for a programming language, the substitution of terms is expressed by composition and finite products. However this does not deal with the order of evaluation of arguments, which may have major consequences when there are side-effects. In this paper Cartesian effect categories are introduced for solving this issue, and they are compared with strong monads, Freyd-categories and Haskell's Arrows. It is proved that a Cartesian effect category is a Freyd-category where the premonoidal structure is provided by a kind of binary product, called the sequential product. The universal property of the sequential product provides Cartesian effect categories with a powerful tool for constructions and proofs. To our knowledge, both effect categories and sequential products are new notions.