~/talk

Scala DSLs and Probabilistic Programming

Talkat Strange Loop 2018 · 2018-09-26..09-28· [machine-learning]
slides:none on file

ScalaStan is an embedded DSL that generates Stan models from Scala and enforces correctness via the Scala type system, implicits and implicit evidence. It stages Stan types, caches compiled models for fast iteration, and runs inference with CmdStan NUTS sampling. The implementation uses type-safe programmatic generation, composable model building, and abstract interpretation to lint loops and scope checks. Practical tradeoffs: most Stan features validate at compile time but a few constructs still require fallback to raw Stan and runtime compilation.

AI-written summary · about

  1. 0:00Scala DSLs and Probabilistic Programming
  2. 0:47Statistics from a Programmer's Perspective
  3. 2:18What is Stan?
  4. 3:14Example: Predicting Weight
  5. 7:14A More Accurate Model?
  6. 7:34Beyond Simple Regression
  7. 9:51What is an Embedded DSL?
  8. 10:07Why Embed the DSL?
  9. 14:34Overview
  10. 15:16Stan within the Scala Type System
  11. 16:06Creating Stan Types
  12. 17:00Stan Values
  13. 17:34Subclassing is Not Enough
  14. 19:23Implicits/Type Classes
  15. 21:09Operator Type-Checking Using Implicits
  16. 22:18Random Number Generation
  17. 23:19Implicits to Enforce Scope
  18. 23:47Using Scala Types to Check Input Data
  19. 26:34Detour: The State Monad
  20. 27:50Type Checking of Stan at Scala Run-Time
  21. 29:18Conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.