<commit_before>(ns such.vars)

(defprotocol Rootable
  "A protocol to look at original values of Vars."
  (has-root-value? [this]
    "Was this given an original value when it was created?" )
  (root-value [this]
    "What value was originally assigned. (Ignores any bindings in effect.)"))

(extend-type clojure.lang.Var
  Rootable
  (has-root-value? [var] (.hasRoot var))
  (root-value [var] (alter-var-root var identity)))<commit_msg>Two ways to get var "names"<commit_after>(ns such.vars)

(defprotocol Rootable
  "A protocol to look at original values of Vars."
  (has-root-value? [this]
    "Was this given an original value when it was created?" )
  (root-value [this]
    "What value was originally assigned. (Ignores any bindings in effect.)"))

(extend-type clojure.lang.Var
  Rootable
  (has-root-value? [var] (.hasRoot var))
  (root-value [var] (alter-var-root var identity)))

(defn name-as-symbol [var]
  (:name (meta var)))

(defn name-as-string [var]
  (str (name-as-symbol var)))
{'fraction_non_alphanumeric': 0.13755020080321284, 'fraction_numerical': 0.0, 'mean_word_length': 3.8872549019607843, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2082911', 'n_tokens_mistral': 343, 'n_tokens_neox': 333, 'n_words': 114}