Computing with failures is a typical programming technique in functional logic programs. However, there are also situations where a program should not fail (e.g., in a determinist...
Abstract. The separation of concerns is a fundamental principle in software engineering. Crosscutting concerns are concerns that do not align with hierarchical and block decomposit...
Abstract. These notes discuss the simultaneous use of generalised fold operators and monads to structure functional programs. Generalised fold operators structure programs after th...
Functional reactive programming (FRP) has simple and powerful semantics, but has resisted efficient implementation. In particular, most past implementations have used demand-driv...
Command-oriented functional programs are currently structured in an ad hoc way that makes the development of multiple userinterfaces difficult and error prone, and makes it diffic...