-- adding first real test to check logged-in-user
[bkell-clj.git] / bkell.clj
blob19f3414ba6496c3a8a948ec2d9a9bbf3c77374b5
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 init-shell [] 
17         (def shell (ref { :active true }))      ;; the shell and memory 
20 (defn bkell [handler] 
21         
22         (init-shell)
23         
24         (loop [ dfadapter handler ]     ;; binds 'handler' to 'dfadapter' 
25                 
26                 (def tree (.parse (get-parser))) 
27                 (. tree apply dfadapter )
28                 
29                 (if (true? (:active (deref bkell/shell)))                               ;; loop unless exit 
30                    (recur dfadapter)
31                 )
32         )
33         
36 ;;(use 'depth_adapter)
37 ;;(bkell (get-depth-adapter))