Media Summary: What looks like mutability in the toplevel is not -- it's really just a consequence of A notion of "behavioral equality" is at the heart of reasoning about the correctness of functional programs Textbook: ... The semantics of `let` uses a notion of substitution, but, how should that be defined? These examples lend intuition. Textbook: ...
Variable Expressions And Scope Ocaml - Detailed Analysis & Overview
What looks like mutability in the toplevel is not -- it's really just a consequence of A notion of "behavioral equality" is at the heart of reasoning about the correctness of functional programs Textbook: ... The semantics of `let` uses a notion of substitution, but, how should that be defined? These examples lend intuition. Textbook: ... Defining the type system for a simple language Textbook: A "closure" is a data structure containing the code for a function, as well as the environment that "closes" off its free More about records vs. variants, and how variants can combine "one of" vs "each of" data. Textbook: ...
Defining the small-step semantics of `let` A substitution-model semantics for functions requires a notion of how to substitute inside the body of a function. Getting that right is ... How to define the substitution operation for simple The environment-model semantics of functions requires careful attention to