Scala DSLs and Probabilistic Programming
Offered By: Strange Loop Conference via YouTube
Course Description
Overview
Explore probabilistic programming and domain-specific languages in this Strange Loop Conference talk. Dive into Stan, a statistical modeling language, and discover ScalaStan, a novel Scala interface for Stan. Learn how ScalaStan leverages Scala's type system to ensure type-safety and prevent invalid code generation. Examine techniques for embedding domain-specific languages, enforcing scope, and type-checking input data. Gain insights into statistical modeling, Bayesian inference, and the intersection of programming languages and statistics through practical examples and in-depth explanations of key concepts.
Syllabus
Scala DSLs and Probabilistic Programming
Statistics from a Programmer's Perspective
What is Stan?
Example: Predicting Weight
A More Accurate Model?
Beyond Simple Regression
What is an Embedded DSL?
Why Embed the DSL?
Overview
Stan within the Scala Type System
Creating Stan Types
Stan Values
Subclassing is Not Enough
Implicits/Type Classes
Operator Type-Checking Using Implicits
Random Number Generation
Implicits to Enforce Scope
Using Scala Types to Check Input Data
Detour: The State Monad
Type Checking of Stan at Scala Run-Time
Conclusion
Taught by
Strange Loop Conference
Tags
Related Courses
Learn Intermediate Java: Generics and CollectionsCodecademy Maintainable CSS using TypeStyle
egghead.io ReasonML Programming - Full Course for Beginners
freeCodeCamp Java Class Library
LearnQuest via Coursera Using Generics in C#
LinkedIn Learning