Putting these in order because some koan packages are prerequisites of others. Feel free to put it in logical order so that Test asserts - Message, bool, etc. (DMarsh: done) Nothing values (DMarsh: done) uniform access principle (DMarsh: Done) named/default args (DMarsh: done) Tuples - syntax (DMarsh: done) Pattern Matching (DMarsh: done ?? Should we add more) Preconditions (DMarsh: Done) Functions returning functions Functions taking functions if expressions for comprehensions (DMarsh: done) imports, packages, and visibility (dhinojosa:In Process) classes (dhinojosa:In Process) mutation lists / cons collections array, list (DMarsh: Done, also maps and mutable maps, sets and mutable sets) map, reduce, filter (DMarsh: Done ?? covered in various collection classes) immutability/side effects (DMarsh: done ?? Do we have enough here??) lazy sequences (Nilanjan) recursion currying / pfa case classes (DMarsh: Done) Pattern Matching traits / mixins (dhinojosa: In Process) type signatures (dhinojosa: In Process) state identity lifetime memoization recursive list processing lambda null option types (Nilanjan) reflection scala properties - set date / use earlier date Make sure this is covered: scala> def pointit() = 123 pointit: ()Int scala> () => pointit() res2: () => Int = scala> res2.apply res4: Int = 123