English
Related papers

Related papers: Polymonadic Programming

200 papers

Algebraic effects & handlers are a modular approach for modeling side-effects in functional programming. Their syntax is defined in terms of a signature of effectful operations, encoded as a functor, that are plugged into the free monad;…

Programming Languages · Computer Science 2023-02-06 Birthe van den Berg , Tom Schrijvers

This work proposes a dependent type theory that combines functions and session-typed processes (with value dependencies) through a contextual monad, internalising typed processes in a dependently-typed lambda-calculus. The proposed…

Programming Languages · Computer Science 2018-01-25 Bernardo Toninho , Nobuko Yoshida

This thesis revolves around an area of computer science called "semantics". We work with operational semantics, equational theories, and denotational semantics. The first contribution of this thesis is a study of the commutativity of…

Logic in Computer Science · Computer Science 2024-06-12 Louis Lemonnier

Large scale real number computation is an essential ingredient in several modern mathematical proofs. Because such lengthy computations cannot be verified by hand, some mathematicians want to use software proof assistants to verify the…

Numerical Analysis · Mathematics 2025-10-20 Russell O'Connor

We present a complete polymorphic effect inference algorithm for an ML-style language with handlers of not only exceptions, but of any other algebraic effect such as input & output, mutable references and many others. Our main aim is to…

Programming Languages · Computer Science 2015-07-01 Matija Pretnar

Probabilistic programming languages and modeling toolkits are two modular ways to build and reuse stochastic models and inference procedures. Combining strengths of both, we express models and inference as generalized coroutines in the same…

Programming Languages · Computer Science 2012-05-14 Oleg Kiselyov , Chung-chieh Shan

We reflect on programming with complicated effects, recalling an undeservingly forgotten alternative to monadic programming and checking to see how well it can actually work in modern functional languages. We adopt and argue the position of…

Programming Languages · Computer Science 2019-05-17 Oleg Kiselyov

This paper proposes a definition of recognizable transducers over monads and comonads, which bridges two important ongoing efforts in the current research on regularity. The first effort is the study of regular transductions, which extends…

Formal Languages and Automata Theory · Computer Science 2024-07-04 Rafał Stefański

Describing systems in terms of choices and their resulting costs and rewards offers the promise of freeing algorithm designers and programmers from specifying how those choices should be made; in implementations, the choices can be realized…

Logic in Computer Science · Computer Science 2024-02-14 Martin Abadi , Gordon Plotkin

We introduce a category-theoreticabstraction of a syntax with auxiliary functions, called an admissiblemonad morphism. Relying on an abstract form of structural recursion,we then design generic tools to construct admissible monad…

Logic in Computer Science · Computer Science 2022-04-11 Tom Hirschowitz , Ambroise Lafont

Monads can be interpreted as encoding formal expressions, or formal operations in the sense of universal algebra. We give a construction which formalizes the idea of "evaluating an expression partially": for example, "2+3" can be obtained…

Category Theory · Mathematics 2021-04-20 Tobias Fritz , Paolo Perrone

Formal deductive systems are very common in computer science. They are used to represent logics, programming languages, and security systems. Moreover, writing programs that manipulate them and that reason about them is important and…

Programming Languages · Computer Science 2018-05-21 Francisco Ferreira Ruiz

Most type systems that support polymorphic functions are based on a version of System-F. We argue that this limits useful programming paradigms for languages with lazy evaluation. We motivate an extension of System-F alleviating this…

Programming Languages · Computer Science 2016-12-15 S. Doaitse Swierstra , Marcos Viera , Atze Dijkstra

Effectful programs interact in ways that go beyond simple input-output, making compositional reasoning challenging. Existing work has shown that when such programs are ``separate'', i.e., when programs do not interfere with each other, it…

Programming Languages · Computer Science 2023-03-06 Pedro H. Azevedo de Amorim , Justin Hsu

Multi-modal program synthesis refers to the task of synthesizing programs (code) from their specification given in different forms, such as a combination of natural language and examples. Examples provide a precise but incomplete…

Artificial Intelligence · Computer Science 2021-09-08 Kia Rahmani , Mohammad Raza , Sumit Gulwani , Vu Le , Daniel Morris , Arjun Radhakrishna , Gustavo Soares , Ashish Tiwari

We present a marriage of functional and structured imperative programming that embeds in pure lambda calculus. We describe how we implement the core of this language in a monadic DSL which is structurally equivalent to our intended source…

Programming Languages · Computer Science 2017-03-17 Phil Scott , Steven Obua , Jacques Fleuriot

In dependently typed programming, proofs of basic, structural properties can be embedded implicitly into programs and do not need to be written explicitly. Besides saving the effort of writing separate proofs, a most distinguishing and…

Programming Languages · Computer Science 2021-03-09 Hsiang-Shang Ko

The principle behind algebraic language theory for various kinds of structures, such as words or trees, is to use a compositional function from the structures into a finite set. To talk about compositionality, one needs some way of…

Logic in Computer Science · Computer Science 2015-02-18 Mikołaj Bojańczyk

In the semantics of programming languages one can view programs as state transformers, or as predicate transformers. Recently the author has introduced state-and-effect triangles which capture this situation categorically, involving an…

Logic in Computer Science · Computer Science 2023-06-22 Bart Jacobs

The term UniMath refers both to a formal system for mathematics, as well as a computer-checked library of mathematics formalized in that system. The UniMath system is a core dependent type theory, augmented by the univalence axiom. The…

Logic in Computer Science · Computer Science 2019-07-16 Benedikt Ahrens , Ralph Matthes , Anders Mörtberg