ADVANCED TRACK
Course Description
This course is for individuals with coding experience seeking to translate those skills into Clojure and learn more about Functional Programming.
Reqirements
Topics Covered
Up and running:
- Introduction to Leiningen (Clojure build tool)
- Using the REPL (Read Eval Print Loop)
- Namespaces in Clojure
Basics
- S-expressions & homoiconicity
- Primitive operators
- Conditionals
Functions
- Named functions
- Anonymous functions
- Arguments
- Recursion
- Local bindings & lexical scope
Data Structures
- Immutable state
- Sequence and collection abstractions
- Lists, vectors, and hash-maps
- Sequence functions
- Key-value functions
- Lazy evaluation
Higher order functions
- map, reduce, filter, apply, etc.
- Solving problems functionally
Advanced Clojure (time permitting)
- Java interop
- Mutability
- OOP
- Macros