15-150: Principles of Functional Programming
Lecture 1: Evaluation and Typing, Binding and Scope
Today we outlined the course and its goals, including referential
transparency, extensional equivalence, and parallelism. We started to
explore the language SML by looking at its types.
Key Concepts
- Computation is Functional
- Programming as an Explanatory Process
- Types, Values, and Expressions
- Typing and Evaluation rules
- Integers, Reals, Booleans, Products
- Parallelism, Work, and Span
- Extensional Equivalence
We covered the slides only until page 44. We will continue from here on Thursday.
(So
far we have only discussed pages 1, 2, 3, 5 and part of page 6 in the
evaluation notes. Please refer back to these notes after Thursday's
lectures.)