How to declare an imperative

P Wadler - ACM Computing Surveys (CSUR), 1997 - dl.acm.org
How can we integrate interaction into a purely declarative language? This tutorial describes
a solution to this problem based on a monad. The solution has been implemented in the …

Graph IRS for impure higher-order languages: making aggressive optimizations affordable with precise effect dependencies

O Bračevac, G Wei, S Jia, S Abeysinghe… - Proceedings of the …, 2023 - dl.acm.org
Graph-based intermediate representations (IRs) are widely used for powerful compiler
optimizations, either interprocedurally in pure functional languages, or intraprocedurally in …

Locus solum: From the rules of logic to the logic of rules

JY Girard - Mathematical structures in computer science, 2001 - cambridge.org
Go back to An-fang, the Peace Square at An-Fang, the Beginning Place at An-Fang, where
all things start (…) An-Fang was near a city, the only living city with a pre-atomic name (…) …

Equality saturation: a new approach to optimization

R Tate, M Stepp, Z Tatlock, S Lerner - … of the 36th annual ACM SIGPLAN …, 2009 - dl.acm.org
Optimizations in a traditional compiler are applied sequentially, with each optimization
destructively modifying the program to produce a transformed program that is then passed to …

Type-directed partial evaluation

O Danvy - Proceedings of the 23rd ACM SIGPLAN-SIGACT …, 1996 - dl.acm.org
We present a strikingly simple partial evaluator, that is type-directed and reifies a compiled
program into the text of a residual, specialized program. Our partial evaluator is concise (a …

[PDF][PDF] Reflection in logic, functional and object-oriented programming: a short comparative study

FN Demers, J Malenfant - Proceedings of the IJCAI, 1995 - lirmm.fr
Reflection is a wide-ranging concept that has been studied independently in many different
areas of science in general, and computer science in particular. Even in the sub-area of …

Intersection types and computational effects

R Davies, F Pfenning - Proceedings of the fifth ACM SIGPLAN …, 2000 - dl.acm.org
We show that standard formulations of intersection type systems are unsound in the
presence of computational effects, and propose a solution similar to the value restriction for …

Capturing types

A Boruch-Gruszecki, M Odersky, E Lee… - ACM Transactions on …, 2023 - dl.acm.org
Type systems usually characterize the shape of values but not their free variables. However,
many desirable safety properties could be guaranteed if one knew the free variables …

Compiling with continuations, continued

A Kennedy - Proceedings of the 12th ACM SIGPLAN international …, 2007 - dl.acm.org
We present a series of CPS-based intermediate languages suitable for functional language
compilation, arguing that they have practical benefits over direct-style languages based on A …

Monads and effects

N Benton, J Hughes, E Moggi - International Summer School on Applied …, 2000 - Springer
A tension in language design has been between simple semantics on the one hand, and
rich possibilities for side-effects, exception handling and so on on the other. The introduction …