   *context* nil)
 
 #?(:clj
-   (defmacro with-monad
+   (defmacro with-context
      "Set current context to specific monad."
      [ctx & body]
      `(cond

        :else
        (binding [*context* ~ctx]
          ~@body))))

(defn ^{:no-doc true}
  get-current-context

(ns cats.core
  "Category Theory abstractions for Clojure"
  #?(:cljs
     (:require-macros [cats.core :refer (with-monad with-context mlet)]))
  (:require [cats.protocols :as p])
  (:refer-clojure :exclude [when unless filter sequence]))

