by Languages Scala, Scheme, Coq, Clojure, Common Lisp, C, Dafny, ...
by Research Topics
-
Generative programming
writing programs that write programs... -
Logic & relational programming
can we think in terms of relations rather than functions? -
Meta-theory
type-theoretic foundations for languages like Scala, for language virtualization, for multi-stage programming, ... -
Reflection
building self-reflecting and self-adapting processes, meta-level architectures, ... -
Satisfiability Modulo Theories (SMT)
how can we put powerful tools like z3 and CVC4 to work? -
Artificial Intelligence
reviving some old school AI. How can we combine it with deep learning for neuro-symbolic systems? -
Application to Precision Medicine
how can we apply ideas from Programming Languages and Artificial Intelligence to medical discovery and drug repurposing?
as Software
- io.livecode.ch
- Contributions include Scala (EPFL), Closure Compiler (Google), Micado (CAG CSAIL), Cytoscape (Ideker Lab).
as Research Prototypes
-
mediKanren
[miniKanren] [medicine] -
Synthesis Scheme
[Scheme] [synthesis] -
LLM mysteries
[ai] -
Reflection Schemes
[Scheme] [reflection] -
Variations on Lisp
[Scala, Scheme][reflection, generative programming] -
CLP(SMT)
[Scheme, miniKanren, SMT] [logic programming] -
staged-miniKanren
[Scheme, miniKanren] [generative programming, logic programming] -
metamk
[Scheme, miniKanren] [logic programming, reflection] -
biohacker
[Common Lisp] [biology] -
LLM verified with Monte Carlo Tree Search
[Dafny, Coq, Lean, Python] [ai] -
metasolfeggio
[Common Lisp, Clojure, ...] [music, harmony & counterpoint]
as Research Artifacts
-
DOT
[Coq, Twelf, PLT Redex, Dafny] [meta-theory] -
LMS-verify
[Scala, Frama-C] [generative programming, verification] -
Collapsing Towers of Interpreters
[Scala, Scheme] [generative programming, reflection] -
Scalogno
[Scala, SMT, tabling] [logic programming] -
SQL to C in 500 lines of code
[Scala, C, SQL] [generative programming, pearl, tutorial]
as Paper Implementation Studies
-
inc
an incremental approach to compiler construction
[Scheme, C, x86 assembly, Rust] [compiler] -
CLP(Set)
set and constraint logic programming
[Scheme, miniKanren, Prolog] [logic programming] -
Truth-Maintenance Systems
building problem solvers
[Common Lisp] [AI, expert system, reasoning] -
FOL
prolegomena
[Common Lisp] [AI, reflection, reasoning] -
Dafny for PL Meta-Theory
software foundations, locally nameless, step-indexed logical relations
[Dafny, Coq] [meta-theory] -
Reflection-Oriented Programming
[Scheme] [reflection] -
logically
art of prolog, prolog for AI, alphaProlog, meta-circular abstract interpretation
[Clojure] [logic programming, abstract interpretation, binders] -
Communication Bootstrapping
[Scheme, Python] [AI] -
Engineered Robustness by Controlled Hallucination
[Common Lisp] [AI] -
core.logic.nominal
alphaKanren
[Clojure] [logic programming, binders] -
simple tracing JIT
[Python, stack VM] [interpreter, JIT] -
Relaxed Machines
[Python, JAX] [neuro-symbolic, differentiable, interpreters] -
Eurisclo: a collective port to Common Lisp of a found original artifact of Eurisko
[Common Lisp][AI]