(0) |
01 · 18 |
Martin Luther King, Jr. Day (no class)
|
DSLs: What, why, and how?
|
01 · 20 |
- What is a DSL?
- Due: Sunday 1/24 at 11:59pm
Critique: Tuesday 1/26 at 11:59pm
|
(1) |
01 · 25 |
What is a DSL?
|
Mini-lab: fluency
|
01 · 27 |
- Language design
- Due: Wednesday 2/3 at 11:59pm
Critique: Friday 2/5 at 11:59pm
|
(2) |
02 · 01 |
Scala intro
|
Projects: interviews
|
02 · 03 |
- Practice Scala
- Due: Wednesday 2/10 at 11:59pm
Critique: Friday 2/12 at 11:59pm
|
(3) |
02 · 08 |
Discussion: Language Design + Scala
|
Functional Scala
|
02 · 10 |
- Project ideas
- Due: Wednesday 2/17 at 11:59pm
Critique: Friday 2/19 at 11:59pm
|
(4) |
02 · 15 |
Lab: Internal control flow
|
Object-oriented Scala
|
02 · 17 |
- Internal DSL: regular expressions
- Due: Friday 2/26 at 11:59pm
Critique: Sunday 2/28 at 11:59pm
|
(5) |
02 · 22 |
Extensibility: Traits, part 1
|
Extensibility: Traits, part 2
|
02 · 24 |
- Language design: Piconot
- Due: Friday 3/11 at 11:59pm
Critique: Tuesday 3/22 at 11:59pm
|
(6) |
02 · 29 |
Extensibility: The Expression Problem
|
Language architecture & parser combinators
|
03 · 02 |
(7) |
03 · 07 |
Models of computation
|
Discuss projects
|
03 · 09 |
(8) |
03 · 14 |
Spring Break (no class)
|
Spring Break (no class)
|
03 · 16 |
|
(9) |
03 · 21 |
critique
|
studio
|
03 · 23 |
- Project: description and plan & Repositories
- Due: Sunday 3/27 at 11:59pm
Critique: Tuesday 3/29 at 11:59pm
|
(10) |
03 · 28 |
critique
|
studio
|
03 · 30 |
- Project: design and implementation
- Due / notebook: Sunday 4/3 at 11:59pm
Critique: Tuesday 4/5 at 11:59pm
|
(11) |
04 · 04 |
critique
|
studio
|
04 · 06 |
- Project: prototype
- Due / notebook: Sunday 4/10 at 11:59pm
Critique: Tuesday 4/12 at 11:59pm
|
(12) |
04 · 11 |
critique
|
studio
|
04 · 13 |
- Notebook: Sunday 4/17 at 11:59pm
Critique: Tuesday 4/19 at 11:59pm
|
(13) |
04 · 18 |
critique
|
studio
|
04 · 20 |
- Project: demo / presentation
- Due / notebook: Sunday 4/24 at 11:59pm
Critique: in class
|
(14) |
04 · 25 |
Presentations
|
Presentations
|
04 · 27 |
- Project: final product and writeup
- Due: Friday 4/29 at 11:59pm
|