logo ANWB - ga naar homepageANWB Homepage

15312 Foundations Of Programming Languages -

`data TypeScheme = Forall String TypeScheme | Mono Type`

: Learning to define a language's type system (statics) and its execution behavior (dynamics) with mathematical precision. 15312 foundations of programming languages

Languages like Haskell push purity and types. Rust adds ownership for memory safety without garbage collection. Go simplifies concurrency with goroutines. Each is a different point in the design space illuminated by 15312. `data TypeScheme = Forall String TypeScheme | Mono

A typical week in "15312 foundations of programming languages" CMU: 15312 foundations of programming languages

-- Example usage: expr = Lam "x" (Var "x") inferredType = inferType expr main = print inferredType -- Output: Forall "a" (Mono (TV "a" -> TV "a"))