44 citations · 155 across the 16 of their papers we have counts for
16 papers
All for one and none forall: Compiling polymorphic relations without monomorphization
Dmitri Volkov, Yafei Yang, Chung-Chieh Shan
We present a new approach for implementing polymorphism for bottom-up relational languages that avoids monomorphization. We begin by introducing semiringKanren, a bottom-up weighte…
Committing to the bit: Relational programming with semiring arrays and SAT solving
Dmitri Volkov, Yafei Yang, Chung-chieh Shan
We propose semiringKanren, a relational programming language where each relation expression denotes a semiring array. We formalize a type system that restricts the arrays to finite…
Exact Recursive Probabilistic Programming
David Chiang, Colin McDonald, Chung-chieh Shan
Recursive calls over recursive data are useful for generating probability distributions, and probabilistic programming allows computations over these distributions to be expressed…
Translating Recursive Probabilistic Programs to Factor Graph Grammars
David Chiang, Chung-chieh Shan
It is natural for probabilistic programs to use conditionals to express alternative substructures in models, and loops (recursion) to express repeated substructures in models. Thus…
Sham: A DSL for Fast DSLs
Rajan Walia, Chung-chieh Shan, Sam Tobin-Hochstadt
Domain-specific languages (DSLs) are touted as both easy to embed in programs and easy to optimize. Yet these goals are often in tension. Embedded or internal DSLs fit naturally wi…
From high-level inference algorithms to efficient code
Rajan Walia, Praveen Narayanan, Jacques Carette +2
Probabilistic programming languages are valuable because they allow domain experts to express probabilistic models and inference algorithms without worrying about irrelevant detail…