I went through the lecture slides and jotted down some notes on anything that I was still confused about. Please feel free to comment on, answer the questions in, or added on to this list of questions:

The tree generated by the BFH will have 10 nodes.
The optimal tree has 8 nodes.

Is this due to the prescence of variables in the bool position?

Lecture 4:
slide 26: Could “fn f => (f(13), f(true))” work if we could promise that the f passed in will always be over type variables, not concrete types? Is this the kind of power that explicit type variable systems (which he refers to on slide 9) have?

slide 36:
Question posed: “What about lists?”
Answer (?): A box just a pointer, so we would just make a pointer to the list, similar to how we box other non-word-sized data structures