Computer scientists are well-versed in dealing with data structures. The same cannot be said about their dual: codata. Even though codata is pervasive in category theory, universal algebra, and logic, the use of codata for programming has been mainly relegated to representing infinite objects and processes. Our goal is to demonstrate the benefits of codata as a general-purpose programming abstraction independent of any specific language (i.e. with a specific evaluation strategy, typing discipline, paradigm, etc.). While codata is not featured in many programming languages today, we show how codata can be easily adopted and implemented by offering simple inter-compilation techniques between data and codata. Ultimately, we hope to utilize the Curry-Howard correspondence to find a common ground and bridge the gap between the functional and object-oriented paradigms.
Mon 8 AprDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
14:00 - 16:00 | |||
14:00 30mTalk | Codata in Action ESOP Paul Downen University of Oregon, USA, Zachary Sullivan , Zena M. Ariola University of Oregon, USA, Simon Peyton Jones Microsoft, UK Link to publication | ||
14:30 30mTalk | Composing bidirectional programs monadically ESOP Li-yao Xia University of Pennsylvania, Dominic Orchard University of Kent, UK, Meng Wang University of Bristol, UK Link to publication | ||
15:00 30mTalk | Counters in Kappa: Semantics, Simulation, and Static Analysis ESOP Link to publication | ||
15:30 30mTalk | One Step at a Time ESOP Link to publication |