Extending and Using Specter
Free!
Minimum price
$0.00
Suggested price

Extending and Using Specter

Get Going Good

About the Book

Core Clojure has functions to query and update shallow or homogenous data structures. However, anyone who's worked with more complex data has written special-purpose functions to reach into or "modify" it. Specter provides an alternative to those functions: a rich language for describing paths into structures.

Specter is simple and focused enough that it doesn't need a full-fledged book. However, it's powerful enough, with enough features, that this book will save you considerable time as you get going with Specter.

The book also explains Specter's internals, for two reasons:

  1. You'll need to understand them in order to write extensions.
  2. It has an interesting design that uses broadly-applicable functional-programming patterns.

In fact, so interesting is the design that the book takes the unusual approach of teaching you Specter's API by having you implement it yourself.

About the Author

Brian Marick
Brian Marick

Brian Marick was first exposed to the functional style in 1983, when the accident of knowing a little bit of Lisp tossed him into the job of technical lead on a project to port Common Lisp to a now-defunct computer architecture. That led him to a reading spree about all things Lisp, the language from which the functional style arguably originated. He’s been a language geek ever since, despite making most of his living as a software process consultant. He’s the author of the popular Midje testing library for Clojure and has written books (Everyday Scripting with Ruby, Programming Cocoa with Ruby, and Functional Programming for the Object-Oriented Programmer). The two books in progress are An Outsider's Guide to Statically Typed Functional Programming and Lenses for the Mere Mortal.

Table of Contents

  • Preface: Why Specter?
    • Specter for selecting
    • Specter for updating
    • Specter for learning
  • How to Use this Book
    • Specter API exercises
    • Specter implementation exercises
    • Thanks for the comments and corrections
    • Contacting me
    • Changelog
  • Understanding Specter By Building It
    • Keywords
    • Predicates
    • Extensibility
    • Predictive vs. runtime protocol lookup
    • ALL

Authors have earned$9,539,843writing, publishing and selling on Leanpub, earning 80% royalties while saving up to 25 million pounds of CO2 and up to 46,000 trees.

Learn more about writing on Leanpub

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers), EPUB (for phones and tablets) and MOBI (for Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses! Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks. Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. It really is that easy.

Learn more about writing on Leanpub