Introduction
Virtual Study Guide
Clojure Big Ideas
Learning Clojure
Development Tools
Java
Leiningen
Editor install guides
Atom.io - ProtoREPL
Atom.io - Proton
VS Code - Calva
Emacs - Spacemacs
IntelliJ - Cursive
Editor User Guides
Atom.io - Protorepl
Atom.io - Proton
Emacs - Spacemacs
VS Code - Calva
IntelliJ - Cursive
Overview of Clojure
When to use Clojure
Who uses Clojure
The syntax
Design
Read, Evaluate, Print Loop (REPL)
All bytecode in the end
Features in more depth
Basic Clojure
Whats my environment
Reading project file
Threading Macros
Show me the docs
Java Interoperability
More Java fun
Quick look at Types
Strings
Numbers & Maths
Ratios
Assigning Names
Naming
Global definitions
Local Bindings
Private functions
Defining Functions
Namespace
Control flow
Data structures
List
Map
Vector
Set
Naming data structures
Shared Memory
Using data structures
Sequences
Lazy Sequences
Destructuring
Applying functions
Mapping functions
Modifying data structures
Lists
Maps
Vectors
Sets
Iterate over data structures
reduce
apply
map
map annonymous function
map partial
Designing Data Structures
With Vectors
With Vectors of Vectors
With Maps
With Maps of Maps
With Vectors of Maps
Model alphabet codes
Model name generation map
Defing behaviour with Functions
Syntax
Calling functions
Examples
Parameters
Anonymous Functions
Simple project
Create a project
Run the REPL
What is Functional Programming
Thinking Functionally
Side effects
Pure functions
Impure functions
First Class functions
Homoiconicity
Higher Order functions
Chaining functions
Example: Hitchhikers Guide
Immutability
Immutable values
Immutable collections
Immutable Local Bindings
Currying & Partial Functions
map with partial
List Comprehension
Lazy Evaluation
Sequences
Sequence-abstraction
Functors
Arity
Pattern matching
Polymorphism
Recursion
Recursion & Polymorphism
Tail recursion
Games
TicTacToe CLI
Create Project
Work in Progress
core.async
Bike Assembly Line
Toy Car assembly line
Clacks Messages
Managing state changes
Project Palindrome
Simple palindrome test
Libraries
clojure.core
clojure.core
Clojars
om
edn
Testing
clojure.test
Leiningen Configuration
Create a project
Run the REPL
Profiles overview
Adding a dev profile
Templates
Create a template
Plugins
Explaining Macros
Where next
Reference
Basic Syntax
Naming
Naming Conventions
Functions
Sequences
Control Flow
Persistent Data Structures
Changing State
Recursion
Reader Macros
Core.async
Prasmatic Schema
Books on Clojure
Performance
Testing functions
Performance
Lighttable
Configure Keyboard mappings
Clojure Standard Library
Collections
How to use the workshop
Technical Requirements
Code Examples
Development Environments
Java
Leiningen
LightTable
Other tools
Published with GitBook
Lighttable
Lighttable
results matching "
"
No results matching "
"