 (ns teropa.nlp.context
+  (:require [clojure.set :as set])
+  (:require [clojure.string :as s])
   (:use teropa.nlp.util)
   (:require [teropa.nlp.probability.conditional-freq-dist :as cfd])
   (:require [teropa.nlp.probability.freq-dist :as fd])

                       word
                       (+ (get res word 0) scr)))
              {}
              scores)))))))

(defn make-context-index
  ([tokens]

  (word-similarity-map [this word]
    "Return a similarity mapping from words to 'similarity scores,'
     indicating how often these two words occur in the same context")
  (similar-words [this word] [this word n])
  (common-contexts [this words] [this words fail-on-unknown]
    "Find contexts where the specified words can all appear; and
     return a frequency distribution mapping each context to the
     number of times that context was used"))

(defrecord ContextIndex [word-to-contexts context-to-words key-fn]
  Context
