Lazy EvaluationExplores lazy evaluation in functional programming, focusing on Scala's implementation of lazy lists.
Functional Programming Basics in ScalaCovers the basics of functional programming in Scala, including evaluation strategies, conditionals, and value definitions, with a focus on computing square roots with Newton's method.
Elements of ProgrammingCovers primitive expressions, evaluation processes, function applications, types, and evaluation strategies in programming.
Safe Mutation in PracticeExplores safe mutation in functional programming through lazy evaluation, object invariants, and efficient caching functions.
Compiler Extension LabCovers the Compiler Extension Lab, focusing on adding new functionality to a simple functional language compiler.
Code Generation LabCovers generating code for a compiler, translating an Amy program to WebAssembly, including memory management and pattern matching compilation.