Evaluation Relations Ocaml Programming Chapter 9 Video 14 - Detailed Analysis
Defining the small-step semantics of `let` expressions, based on substitution Textbook: How to infer the type of `if` expressions in HM type inference Textbook: The semantics of `let` uses a notion of substitution, but, how should that be defined? These examples lend intuition. Textbook: ... In a small-step semantics, an expression repeatedly takes a single step of Putting together the entire HM type inference algorithm: collecting constraints, and solving them with unification Textbook: ... The "type checking" phase of compilation performs a static analysis to prevent run-time errors during
HM type inference of `let` expressions led to type schemes, which enabled polymorphism. Add mutability, though, could lead to a ... How to define the substitution operation for simple expressions, including `if` and `let` Textbook: Using pattern matching to access the pieces of a variant. Textbook: Compilers translate code from one language to another. Interpreters execute code. Virtual machines and just-in-time compilation ... Implementing the type checker for a simple language: constants, variables, and binary operators Textbook: ... A "closure" is a data structure containing the code for a function, as well as the environment that "closes" off its free variables.
Implementing the type checker for a simple language: `let` and `if` Textbook: Implementing the parsing of integer constants in the calculator interpreter. Textbook: How to infer the type of function applications in HM type inference Textbook: A comparison of big-step vs. small-step semantics, and substitution model vs. environment model Textbook: ...
Photo Gallery


















