2,240 research outputs found
Programming with Algebraic Effects and Handlers
Eff is a programming language based on the algebraic approach to
computational effects, in which effects are viewed as algebraic operations and
effect handlers as homomorphisms from free algebras. Eff supports first-class
effects and handlers through which we may easily define new computational
effects, seamlessly combine existing ones, and handle them in novel ways. We
give a denotational semantics of eff and discuss a prototype implementation
based on it. Through examples we demonstrate how the standard effects are
treated in eff, and how eff supports programming techniques that use various
forms of delimited continuations, such as backtracking, breadth-first search,
selection functionals, cooperative multi-threading, and others
Evaluating definitive principles for interaction in graphics
This paper is an appraisal of current progress towards supporting interactive graphics within the framework of a general-purpose programming paradigm based upon definitions. It considers how the use of definitive principles relates to other work, why it appears promising, and what progress has been made towards the resolution of technical difficulties. It re-examines potential for applications of definitive principles in interactive graphics in the light of more recently developed ideas about dealing with control issues and dynamically changing relationships in a definitive programming framework. It also takes account of new research into notations for graphics that makes use of geometrical constructions. As a subsidiary theme, the paper contrasts the support for reference and representation of geometric relationships in various kinds of interactive graphics systems
Variations on the Theme of Conning in Mathematical Economics
The mathematization of economics is almost exclusively in terms of the mathematics of real analysis which, in turn, is founded on set theory (and the axiom of choice) and orthodox mathematical logic. In this paper I try to point out that this kind of mathematization is replete with economic infelicities. The attempt to extract these infelicities is in terms of three main examples: dynamics, policy and rational expectations and learning. The focus is on the role and reliance on standard xed point theorems in orthodox mathematical economics
Ten virtues of structured graphs
This paper extends the invited talk by the first author about the virtues
of structured graphs. The motivation behind the talk and this paper relies on our
experience on the development of ADR, a formal approach for the design of styleconformant,
reconfigurable software systems. ADR is based on hierarchical graphs
with interfaces and it has been conceived in the attempt of reconciling software architectures
and process calculi by means of graphical methods. We have tried to
write an ADR agnostic paper where we raise some drawbacks of flat, unstructured
graphs for the design and analysis of software systems and we argue that hierarchical,
structured graphs can alleviate such drawbacks
Type Classes for Mathematics in Type Theory
The introduction of first-class type classes in the Coq system calls for
re-examination of the basic interfaces used for mathematical formalization in
type theory. We present a new set of type classes for mathematics and take full
advantage of their unique features to make practical a particularly flexible
approach formerly thought infeasible. Thus, we address both traditional proof
engineering challenges as well as new ones resulting from our ambition to build
upon this development a library of constructive analysis in which abstraction
penalties inhibiting efficient computation are reduced to a minimum.
The base of our development consists of type classes representing a standard
algebraic hierarchy, as well as portions of category theory and universal
algebra. On this foundation we build a set of mathematically sound abstract
interfaces for different kinds of numbers, succinctly expressed using
categorical language and universal algebra constructions. Strategic use of type
classes lets us support these high-level theory-friendly definitions while
still enabling efficient implementations unhindered by gratuitous indirection,
conversion or projection.
Algebra thrives on the interplay between syntax and semantics. The
Prolog-like abilities of type class instance resolution allow us to
conveniently define a quote function, thus facilitating the use of reflective
techniques
- ā¦