Completed
Main Characteristics Two key abstractions: map(f, chunks) and reduce(g, results)
Class Central Classrooms beta
YouTube videos curated by Class Central.
Classroom Contents
Exercises in Style
Automatically move to the next video in the Classroom when playback concludes
- 1 Intro
- 2 Programming Styles Ways of expressing tasks Exist at all scales Recur in multiple scales Codified in PLS
- 3 Why Are Styles Important? Many Common vocabularies Basic frames of reference Some better than others Depending on many things!
- 4 Why Are Styles Important? Many Common vocabularies Basic frames of reference Some better than others - Depending on many things!
- 5 Main Characteristics No abstractions Heavy control flow
- 6 Main Characteristics No [named] abstractions Very few [long] lines of code Advanced libraries / constructs
- 7 Main Characteristics Procedural abstractions maybe input, no output Shared state Commands
- 8 Main Characteristics Function abstractions f: Input → Output No shared state Function composition fºg
- 9 Main Characteristics Functions take one additional parameter, f called at the end * given what would normally be the return value plus the next function
- 10 Main Characteristics Things, things and more things! Capsules of data and procedures Data is never accessed directly Capsules say "I do the same things as that one, and more!"
- 11 Main Characteristics (Similar to #6) Capsules receive messages via single receiving procedure
- 12 Main Characteristics Two key abstractions: map(f, chunks) and reduce(g, results)