anchor.diff:  
   == Host interop
   
  -Host interop is one of the biggest pain points that cljx and reader conditionals both solve. You may have a Clojure file that is almost pure Clojure, but needs to call out to the host environment for one function. https://github.com/lymingtonprecision/route-ccrs/blob/c579aea05504736f2cfbd31c3c755f7e25fdad77/src/route_ccrs/manufacturing_methods.cljc#L8-L10[This] is a classic example:
  +Host interop is one of the biggest pain points reader conditionals solve. You may have a Clojure file that is almost pure Clojure, but needs to call out to the host environment for one function. https://github.com/lymingtonprecision/route-ccrs/blob/c579aea05504736f2cfbd31c3c755f7e25fdad77/src/route_ccrs/manufacturing_methods.cljc#L8-L10[This] is a classic example:
   
   [source,clojure]
   ----
  
positive.code: 
  == Exception handling
  
  Exception handling is another area that benefits from reader conditionals. ClojureScript supports `(catch :default)` to catch everything and this may come Clojure too, however you will often still want to handle host specific exceptions. Here's an https://github.com/runexec/lemon-disc/blob/c24c6638f1d476a0f5470387e52a2b702117c4a9/src/lemon_disc/core.cljc#L65-L72[example] from https://github.com/runexec/lemon-disc[lemon-disc].
  
  [source,clojure]
  ----
  
negative.code:   (:require #?(:clj  [clojure.test :refer :all]
                 :cljs [cljs.test :refer-macros [is]])
              #?(:cljs [cljs.test.check :refer [quick-check]])
              #?(:clj  [clojure.test.check.properties :as prop]
                 :cljs [cljs.test.check.properties :as prop
                         :include-macros true])
              [schema.core :as schema :refer [check]]))
  ----
  
  Here is another example, we want to be able to use the `rethinkdb.query` namespace in Clojure and ClojureScript. However we can't load the required `rethinkdb.net` in ClojureScript as it uses Java sockets to communicate with the database. Instead we use a reader conditional so the namespace is only required when read by Clojure programs.
  
  [source,clojure]
  ----
  (ns rethinkdb.query
    (:require [clojure.walk :refer [postwalk postwalk-replace]]
              #?(:clj [rethinkdb.net :as net])))
  
  ;; snip...
  