 ;;;;;
 ; TODO;
 ; remove use of rule in favor of pattern
-; remove use of *tother* in favor of concept
+; remove use of *other* in favor of concept
 ; remove use of create-pattern or whatever
 ; fix up tabs
 ; fxi up comments by ; ;; ;;;, ;;;;; etc.

		(doseq [tkn tokens]
			(println "  token:" tkn)
			(doseq [pattern (*phrasal-patterns-map* tkn)]
				(println "    ptn:" (pattern :frame))
				;(let [ x  (advance-pattern pattern (pattern :frame) tkn) ]
				(let [ x  (advance-pattern-literal pattern tkn) ]
					(add-pattern x)

; fix up ears for dynamic variables (done)
; indent arg vectors and comment strings
; that annoying todo below about needing i computed before hand
; testing 
; logging
	
(def ^:dynamic *phrasal-patterns-map* {})
(def ^:dynamic *completed-patterns* {})


(defn reset []
	(def ^:dynamic *phrasal-patterns-map* {})
	(def ^:dynamic *completed-patterns* {}) 
	(println ""))

; A phrasal pattern is used to define and run or advance pattern discovery.
