Media Summary: A "closure" is a data structure containing the code for a function, as well as the environment that "closes" off its free variables. Defining the small-step semantics of `let` expressions, based on How to infer the type of `if` expressions in HM type inference Textbook:

Substitution Examples Ocaml Programming Chapter 9 Video 16 - Detailed Analysis & Overview

A "closure" is a data structure containing the code for a function, as well as the environment that "closes" off its free variables. Defining the small-step semantics of `let` expressions, based on How to infer the type of `if` expressions in HM type inference Textbook: Using pattern matching to access the pieces of a variant. Textbook: The "environment model" differs from the " Implementing the parsing of integer constants in the

Achieving polymorphism for `let` expressions in HM type inference leads to "type schemes", which universally quantify over type ... HM type inference of `let` expressions led to type schemes, which enabled polymorphism. Add mutability, though, could lead to a ... Compilers translate code from one language to another. Interpreters execute code. Virtual machines and just-in-time compilation ... The `function` keyword provides helpful syntactic sugar for pattern matching. Textbook: More about using pattern matching with variants. Textbook: How to implement `let` expressions, including

A comparison of big-step vs. small-step semantics, and

Photo Gallery

Substitution Examples | OCaml Programming | Chapter 9 Video 16
Definition of Substitution | OCaml Programming | Chapter 9 Video 17
Closures | OCaml Programming | Chapter 9 Video 27
Environment Model Example | OCaml Programming | Chapter 9 Video 24
Substitution in Functions | OCaml Programming | Chapter 9 Video 22
Let Semantics | OCaml Programming | Chapter 9 Video 15
Inference of Ifs | OCaml Programming | Chapter 9 Video 40
Pattern Matching with Variants Part 1 | OCaml Programming | Chapter 3 Video 14
Environment Model of SimPL | OCaml Programming | Chapter 9 Video 23
Calculator: Parse Integers | OCaml Programming | Chapter 9 Video 4
Core OCaml Small Step | OCaml Programming | Chapter 9 Video 21
Let Polymorphism | OCaml Programming | Chapter 9 Video 48
View Detailed Profile
Substitution Examples | OCaml Programming | Chapter 9 Video 16

Substitution Examples | OCaml Programming | Chapter 9 Video 16

The semantics of `let` uses a notion of

Definition of Substitution | OCaml Programming | Chapter 9 Video 17

Definition of Substitution | OCaml Programming | Chapter 9 Video 17

How to define the

Closures | OCaml Programming | Chapter 9 Video 27

Closures | OCaml Programming | Chapter 9 Video 27

A "closure" is a data structure containing the code for a function, as well as the environment that "closes" off its free variables.

Environment Model Example | OCaml Programming | Chapter 9 Video 24

Environment Model Example | OCaml Programming | Chapter 9 Video 24

An

Substitution in Functions | OCaml Programming | Chapter 9 Video 22

Substitution in Functions | OCaml Programming | Chapter 9 Video 22

A

Let Semantics | OCaml Programming | Chapter 9 Video 15

Let Semantics | OCaml Programming | Chapter 9 Video 15

Defining the small-step semantics of `let` expressions, based on

Inference of Ifs | OCaml Programming | Chapter 9 Video 40

Inference of Ifs | OCaml Programming | Chapter 9 Video 40

How to infer the type of `if` expressions in HM type inference Textbook: https://cs3110.github.io/textbook.

Pattern Matching with Variants Part 1 | OCaml Programming | Chapter 3 Video 14

Pattern Matching with Variants Part 1 | OCaml Programming | Chapter 3 Video 14

Using pattern matching to access the pieces of a variant. Textbook: https://cs3110.github.io/textbook.

Environment Model of SimPL | OCaml Programming | Chapter 9 Video 23

Environment Model of SimPL | OCaml Programming | Chapter 9 Video 23

The "environment model" differs from the "

Calculator: Parse Integers | OCaml Programming | Chapter 9 Video 4

Calculator: Parse Integers | OCaml Programming | Chapter 9 Video 4

Implementing the parsing of integer constants in the

Core OCaml Small Step | OCaml Programming | Chapter 9 Video 21

Core OCaml Small Step | OCaml Programming | Chapter 9 Video 21

Defining a small-step

Let Polymorphism | OCaml Programming | Chapter 9 Video 48

Let Polymorphism | OCaml Programming | Chapter 9 Video 48

Achieving polymorphism for `let` expressions in HM type inference leads to "type schemes", which universally quantify over type ...

The Value Restriction | OCaml Programming | Chapter 9 Video 49

The Value Restriction | OCaml Programming | Chapter 9 Video 49

HM type inference of `let` expressions led to type schemes, which enabled polymorphism. Add mutability, though, could lead to a ...

Compilers and Interpreters | OCaml Programming | Chapter 9 Video 1

Compilers and Interpreters | OCaml Programming | Chapter 9 Video 1

Compilers translate code from one language to another. Interpreters execute code. Virtual machines and just-in-time compilation ...

The Function Keyword | OCaml Programming | Chapter 3 Video 9

The Function Keyword | OCaml Programming | Chapter 3 Video 9

The `function` keyword provides helpful syntactic sugar for pattern matching. Textbook: https://cs3110.github.io/textbook.

Pattern Matching with Variants Part 2 | OCaml Programming | Chapter 3 Video 15

Pattern Matching with Variants Part 2 | OCaml Programming | Chapter 3 Video 15

More about using pattern matching with variants. Textbook: https://cs3110.github.io/textbook.

Calculator: Intro | OCaml Programming | Chapter 9 Video 3

Calculator: Intro | OCaml Programming | Chapter 9 Video 3

The first

Implementing Let in the Calculator | OCaml Programming | Chapter 9 Video 18

Implementing Let in the Calculator | OCaml Programming | Chapter 9 Video 18

How to implement `let` expressions, including

Recap of All Models | OCaml Programming | Chapter 9 Video 30

Recap of All Models | OCaml Programming | Chapter 9 Video 30

A comparison of big-step vs. small-step semantics, and