(ns foo.core
(:require #?(:cljs [cljs.pprint :as pp]
:clj [clojure.pprint :as pp]))
#?(:cljs (:require-macros [cljs.pprint :refer [pprint-logical-block print-length-loop]])))
(defn foo []
(pp/print-length-loop [a 17]
(when (pos? a)
(pp/write a)
(recur (dec a)))))
cljs.user=> (require 'foo.core)
nil
cljs.user=> (foo.core/foo)
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
nil