For weeks, months —nay!—from the very moment you were born, you’ve felt it calling to you. At long last you’ll be united with the programming language you’ve been longing for: Clojure!
As a Lisp-style functional programming language, Clojure lets you write robust and elegant code, and because it runs on the Java Virtual Machine, you can take advantage of the vast Java ecosystem. Clojure for the Brave and True offers a “dessert-first” approach: you’ll start playing with real programs immediately, as you steadily acclimate to the abstract but powerful features of Lisp and functional programming. Inside you’ll find an offbeat, practical guide to Clojure, filled with quirky sample programs that catch cheese thieves and track glittery vampires.
Learn how to:
Wield Clojure’s core functions
Use Emacs for Clojure development
Write macros to modify Clojure itself
Use Clojure’s tools to simplify concurrency and parallel programming
Clojure for the Brave and True assumes no prior experience with Clojure, the Java Virtual Machine, or functional programming. Are you ready, brave reader, to meet your true destiny? Grab your best pair of parentheses—you’re about to embark on an epic journey into the world of Clojure!
Author(s): Daniel Higginbotham
Publisher: No Starch Press
Year: 2015
Language: English
Pages: 329
Contents | Reviews | Updates
Take 30% off with the coupon code ZOMBIEHUGS
You'll also get a custom sticker with your print book order, while supplies last!
Download Chapter 3: Do Things: A Clojure Crash Course (PDF)
Download the repository for the emacs configuration used in Chapter 2
Download the code from GitHub
For weeks, months —nay!—from the very moment you were born, you’ve felt it calling to you. At long last you’ll be united with the programming language you’ve been longing for: Clojure!
As a Lisp-style functional programming language, Clojure lets you write robust and elegant code, and because it runs on the Java Virtual Machine, you can take advantage of the vast Java ecosystem. Clojure for the Brave and True offers a “dessert-first” approach: you’ll start playing with real programs immediately, as you steadily acclimate to the abstract but powerful features of Lisp and functional programming. Inside you’ll find an offbeat, practical guide to Clojure, filled with quirky sample programs that catch cheese thieves and track glittery vampires.
Learn how to:
Wield Clojure’s core functions
Use Emacs for Clojure development
Write macros to modify Clojure itself
Use Clojure’s tools to simplify concurrency and parallel programming
Clojure for the Brave and True assumes no prior experience with Clojure, the Java Virtual Machine, or functional programming. Are you ready, brave reader, to meet your true destiny? Grab your best pair of parentheses—you’re about to embark on an epic journey into the world of Clojure!
About the Author
Daniel Higginbotham has been a professional programmer for eleven years, half of that at McKinsey & Company, where he used Clojure to build mobile and web applications. He has also contributed to the curriculum for ClojureBridge, an organization that offers free, beginner-friendly Clojure workshops for women. Daniel blogs about programming and life at flyingmachinestudios.com, and can be found on Twitter, @nonrecursive. He lives in Durham, North Carolina, with his wife and four cats.
Table of Contents
Introduction
Part I: Environment Setup
Chapter 1: Building, Running, and the REPL
Chapter 2: How to Use Emacs, an Excellent Clojure Editor
Part II: Language Fundamentals
Chapter 3: Do Things: A Clojure Language Crash Course
Chapter 4: Core Functions in Depth
Chapter 5: Functional Programming
Chapter 6: Organizing Your Project: a Librarian’s Tale
Chapter 7: Clojure Alchemy: Reading, Evaluation, and Macros
Chapter 8: Writing Macros
Part III: Advanced Topics
Chapter 9: Concurrent and Parallel Programming
Chapter 10: Clojure Metaphysics: Atoms, Refs, Vars, and Cuddle Zombies
Chapter 11: Master Concurrent Processes with core.async
Chapter 12: Interacting with Java
Chapter 13: Create and Extend Abstractions with Multimethods, Protocols, and Records
Appendix A: Building and Developing with Leiningen
Appendix B: Boot, the Fancy Clojure Build Framework