Control-flow analysis of functional programs

J Midtgaard - ACM computing surveys (CSUR), 2012 - dl.acm.org
We present a survey of control-flow analysis of functional programs, which has been the
subject of extensive investigation throughout the past 30 years. Analyses of the control flow …

Lightweight modular staging: a pragmatic approach to runtime code generation and compiled DSLs

T Rompf, M Odersky - Proceedings of the ninth international conference …, 2010 - dl.acm.org
Software engineering demands generality and abstraction, performance demands
specialization and concretization. Generative programming can provide both, but the effort …

Efficient RAM and control flow in verifiable outsourced computation

RS Wahby, S Setty, M Howald, Z Ren… - Cryptology ePrint …, 2014 - eprint.iacr.org
Recent work on proof-based verifiable computation has resulted in built systems that employ
tools from complexity theory and cryptography to address a basic problem in systems …

The simple essence of automatic differentiation

C Elliott - Proceedings of the ACM on Programming Languages, 2018 - dl.acm.org
Automatic differentiation (AD) in reverse mode (RAD) is a central component of deep
learning and other uses of large-scale optimization. Commonly used RAD algorithms such …

Scilla: a smart contract intermediate-level language

I Sergey, A Kumar, A Hobor - arXiv preprint arXiv:1801.00687, 2018 - arxiv.org
This paper outlines key design principles of Scilla---an intermediate-level language for
verified smart contracts. Scilla provides a clean separation between the communication …

Retrofitting effect handlers onto OCaml

KC Sivaramakrishnan, S Dolan, L White… - Proceedings of the …, 2021 - dl.acm.org
Effect handlers have been gathering momentum as a mechanism for modular programming
with user-defined effects. Effect handlers allow for non-local control flow mechanisms such …

Demystifying differentiable programming: Shift/reset the penultimate backpropagator

F Wang, D Zheng, J Decker, X Wu… - Proceedings of the …, 2019 - dl.acm.org
Deep learning has seen tremendous success over the past decade in computer vision,
machine translation, and gameplay. This success rests crucially on gradient-descent …

A functional correspondence between evaluators and abstract machines

MS Ager, D Biernacki, O Danvy… - Proceedings of the 5th …, 2003 - dl.acm.org
We bridge the gap between functional evaluators and abstract machines for the λ-calculus,
using closure conversion, transformation into continuation-passing style, and …

Forwarding in attribute grammars for modular language design

E Van Wyk, O De Moor, K Backhouse… - … CC 2002 Held as Part of …, 2002 - Springer
Forwarding is a technique for providing default attribute definitions in attribute grammars that
is helpful in the modular implementation of programming languages. It complements existing …

Analysing the complexity of functional programs: higher-order meets first-order

M Avanzini, U Dal Lago, G Moser - Proceedings of the 20th ACM …, 2015 - dl.acm.org
We show how the complexity of higher-order functional programs can be analysed
automatically by applying program transformations to a defunctionalised versions of them …