# Failjure: Exception-free error handling for Clojure

DevFeed: [Failjure: Exception-free error handling for Clojure](<https://devfeed.tech/articles/failjure-exception-free-error-handling-for-clojure-32137.md>)

Original publisher: [Read original article](<https://adambard.com/blog/introducing-failjure/>)

Published: 2016-01-30T00:00:00Z

Content type: release

Language: en

Sources: [Adam Bard](<https://devfeed.tech/sources/adam-bard.md>)

Topics: [Clojure](<https://devfeed.tech/topics/clojure.md>), [Error Handling](<https://devfeed.tech/topics/error-handling.md>), [Library](<https://devfeed.tech/topics/library.md>), [exceptions](<https://devfeed.tech/topics/exceptions.md>)

Tags: [clojure](<https://devfeed.tech/tags/clojure.md>), [error-handling](<https://devfeed.tech/tags/error-handling.md>), [exceptions](<https://devfeed.tech/tags/exceptions.md>), [library](<https://devfeed.tech/tags/library.md>), [monad](<https://devfeed.tech/tags/monad.md>)

## AI overview

The article introduces Failjure, a Clojure utility library for exception-free error handling. It describes returning failure values instead of throwing exceptions, short-circuiting with built-in helpers, wrapping exceptions as failures, and distinguishing expected faults from unexpected errors.

## Source excerpt

I've written before about handling errors in Clojure without using exceptions, by making use of ad-hoc monads. In that post, I also referenced Andrew Brehaut's error monad implementation. Since then, I've written a number of projects that use similar handling, and I thought the time had come to wrap it up in a library, which I'm calling Failjure.