Clojure is a simple, powerful and fun language to develop any and all applications. It has a simple syntax that is quick to learn and a wide range of Clojure libraries to build any kind of apps and services. Its also easy to use any existing Java / JVM Language code or libraries as part of your Clojure apps.
In this workshop we take a hands on approach where everyone takes Clojure code and experiments with it using the REPL (interactive runtime environment). You will quickly get a feel for Clojure by evaluating, breaking, fixing and extending code in the REPL, all the while getting instant feedback on what your code is doing.
As we work through code we will discuss the concepts behind Clojure, including functional programming, "pure" functions and a stateless approach with persistent data structures, changing state safely, Java interoperability and tooling around Clojure.
Get a [free Clojurians slack community account](https://clojurians.net/**
A refresh of the contents of this book is currently underway, so things may.
Gitbook plugins
- anchor-headings-lambda
- callouts
- codeblock-disable-glossary
- disqus
- folding-chapters - fold navigation sections
- ga - Google analytics
- -glossary - disable default glossary
- -highlight - disable default highlight (prism)
- klipse - embed Klipse code evaluation in pages
- newtabs - in-page tab sections prism code block syntax highlighting (use jr0cket.css theme, added manually)
- sectionx-ex - in-page sections that can be collapsed (klipse doesnt work inside a section)
- -sharing - buttons to share on social media (default plugin disabled) splitter - movable vertical bar between navigation and content, remembers position
- terminull-light - fancy console - draws copy button on klipse elements
- theme-jr0cket - custom version of theme-code, removing numbering toggle-chapters
- toolbar - add toolbar of links to GitHub, Chat, etc.
- youtubex - embed YouTube videos by id, rending responsively to page size wide-page
Workshop
- Getting started with Clojure
- Clojure through code - sample code to support this project
- Lighttable Koans - exercises to help you discover Clojure
- Clojure Webapp workshop - building server-side webapps in Clojure
Learning Clojure
- Clojure.org, features and rational
- Clojure documentation
- Clojure cheetsheet
- Official Clojure Google group
- CrossClj - cross-referencing the Clojure ecosystem
- Brave Clojure
Hint There are over 20 excellent books published on Clojure that go into detailed theory behind the language
Community
- Clojure-docs - community docs
- Clojars and CrossCLJ - cross-referencing the Clojure ecosystem
- re-find (borkdude) - find functions from arguments and return values
- Clojure & ClojureScript Dependencies
- 4Clojure exercises & 4Clojure Google group
- ClojureScript REPL - website REPL
- LambdaX
- London Clojurians and their Google group
- Uncle Bob presents Clojure
- Snake Game in Clojure
- Clojure design patterns
This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License (including images & stylesheets).
Clojure, Practicalli by Practicalli is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Based on a work at Clojure, Practicalli on Gitub.
Permissions beyond the scope of this license may be available at @practical_li.