Using functor categories to generate intermediate code
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The geometry of interaction machine
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Lava: hardware design in Haskell
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Syntactic control of interference revisited
Theoretical Computer Science - Special issue on mathematical foundations of programming semantics
On full abstraction for PCF: I, II, and III
Information and Computation
Information and Computation
Syntactic control of interference
POPL '78 Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Geometry of Interaction (Abstract)
CONCUR '94 Proceedings of the Concurrency Theory
Game semantics and abstract machines
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
Globally-asynchronous locally-synchronous systems (performance, reliability, digital)
Globally-asynchronous locally-synchronous systems (performance, reliability, digital)
The VLSI-programming language tangram and its translation into handshake circuits
EURO-DAC '91 Proceedings of the conference on European design automation
Journal of Functional Programming
A Categorical Semantics of Quantum Protocols
LICS '04 Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science
A structural approach to reversible computation
Theoretical Computer Science
Toward a grainless semantics for shared-variable concurrency
FSTTCS'04 Proceedings of the 24th international conference on Foundations of Software Technology and Theoretical Computer Science
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
The Calculus of Handshake Configurations
FOSSACS '09 Proceedings of the 12th International Conference on Foundations of Software Science and Computational Structures: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Geometry of Synthesis II: From Games to Delay-Insensitive Circuits
Electronic Notes in Theoretical Computer Science (ENTCS)
On the compositionality of round abstraction
CONCUR'10 Proceedings of the 21st international conference on Concurrency theory
Geometry of synthesis III: resource management through type inference
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A calculus for hardware description*
Journal of Functional Programming
The structure of first-order causality
Mathematical Structures in Computer Science
Synchronous game semantics via round abstraction
FOSSACS'11/ETAPS'11 Proceedings of the 14th international conference on Foundations of software science and computational structures: part of the joint European conferences on theory and practice of software
Linearity and recursion in a typed Lambda-calculus
Proceedings of the 13th international ACM SIGPLAN symposium on Principles and practices of declarative programming
Geometry of synthesis iv: compiling affine recursion into static hardware
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Coquet: a coq library for verifying hardware
CPP'11 Proceedings of the First international conference on Certified Programs and Proofs
Computation-by-Interaction with effects
APLAS'11 Proceedings of the 9th Asian conference on Programming Languages and Systems
The geometry of synthesis: how to make hardware out of software (abstract)
MPC'12 Proceedings of the 11th international conference on Mathematics of Program Construction
Synchronous digital circuits as functional programs
ACM Computing Surveys (CSUR)
Hi-index | 0.00 |
We propose a new technique for hardware synthesis from higher-order functional languages with imperative features based on Reynolds's Syntactic Control of Interference. The restriction on contraction in the type system is useful for managing the thorny issue of sharing of physical circuits. We use a semantic model inspired by game semantics and the geometry of interaction, and express it directly as a certain class of digital circuits that form a cartesian, monoidal-closed category. A soundness result is given, which is also a correctness result for the compilation technique.