      (binding [*context* ~ctx]
        ~@body)))
 
-(defn get-current-context
+(defn ^{:no-doc true}
+  get-current-context
   "Get current context or obtain it from
   the provided instance."
   ([] (get-current-context nil))

  "Apply a function f to the value inside functor's fv
  preserving the context type."
  [f fv]
  (p/fmap (get-current-context fv) f fv))

(defn fapply
  "Given function inside af's conext and value inside

(defn forseq
  "Same as mapseq but with the arguments in reverse order.

  Let se a little example:

      (m/forseq [2 3] maybe/just)
      ;; => <Just [[2 3]]>

  Yet an other example that fails:

      (m/forseq [1 2]
                (fn [v]
                  (if (odd? v)
                    (maybe/just v)
                    (maybe/nothing))))
      ;; => <Nothing>
  "
  [vs mf]
  (mapseq mf vs))
