-- successful first pass at adding a user
[bkell-clj.git] / bkell.clj
blobce07040b45df31c44bf2901b902e6d0722632388
2 (ns bkell
3    (:import com.interrupt.bookkeeping.cc.parser.Parser) 
4    (:import com.interrupt.bookkeeping.cc.lexer.Lexer) 
5    (:import java.io.PushbackReader) 
6    (:import java.io.InputStreamReader) 
7    
8    (:use clojure.core)
9    
12 (defn get-parser [] 
13         (Parser. (Lexer. (PushbackReader. (InputStreamReader. java.lang.System/in) 1024)))
16 (defn bkell [handler] 
17         
18         
19         (def shell (ref { :active true }))      ;; the shell and memory 
20         
21         (loop [ dfadapter handler ]     ;; binds 'handler' to 'dfadapter' 
22                 
23                 (def tree (.parse (get-parser))) 
24                 (. tree apply dfadapter )
25                 
26                 (if (true? (:active (deref bkell/shell)))                               ;; loop unless exit 
27                    (recur dfadapter)
28                 )
29         )
30         
33 ;;(use 'depth_adapter)
34 ;;(bkell (get-depth-adapter))