? .l8cl
? .l8sl
? .luf
? .tsdb_history
? C-lkb.lsp
? C-tsdb.lsp
? asdf2
? c-lkb.lsp
? c-tsdb.lsp
? diff.110607
? tsdb-patch
? x.tsbd
? ~e
? asdf/source/acl-compat/acl-excl-common.fasl
? asdf/source/acl-compat/chunked-stream-mixin.fasl
? asdf/source/acl-compat/lw-buffering.fasl
? asdf/source/acl-compat/packages.fasl
? asdf/source/acl-compat/sbcl/acl-excl.fasl
? asdf/source/acl-compat/sbcl/acl-mp.fasl
? asdf/source/acl-compat/sbcl/acl-socket.fasl
? asdf/source/acl-compat/sbcl/acl-sys.fasl
? asdf/source/cl-ppcre/api.fasl
? asdf/source/cl-ppcre/closures.fasl
? asdf/source/cl-ppcre/convert.fasl
? asdf/source/cl-ppcre/errors.fasl
? asdf/source/cl-ppcre/lexer.fasl
? asdf/source/cl-ppcre/optimize.fasl
? asdf/source/cl-ppcre/packages.fasl
? asdf/source/cl-ppcre/parser.fasl
? asdf/source/cl-ppcre/regex-class.fasl
? asdf/source/cl-ppcre/repetition-closures.fasl
? asdf/source/cl-ppcre/scanner.fasl
? asdf/source/cl-ppcre/specials.fasl
? asdf/source/cl-ppcre/util.fasl
? asdf/source/puri/src.fasl
? glue/lui.fasl
? lexdb/headers.fasl
? lexdb/lexport.fasl
? lexdb/psql-lex-database.fasl
? lexdb/psqllex.fasl
? preprocess/server.fasl
? pvm/pvm-sbcl.fasl
? pvm/pvm-sbcl.lisp
? tsdb/home/anonymous
? tsdb/home/lingo/21-mar-07
? tsdb/home/lingo/jul-06
? tsdb/lisp/capi-sbcl.lisp
? tsdb/lisp/capi.fasl
? tsdb/lisp/commands.fasl
? tsdb/lisp/derivations.fasl
? tsdb/lisp/experiment.fasl
? tsdb/lisp/features.fasl
? tsdb/lisp/import.fasl
? tsdb/lisp/lkb-interface.fasl
? tsdb/lisp/macros.fasl
? tsdb/lisp/mt.fasl
? tsdb/lisp/podium.fasl
? tsdb/lisp/process.fasl
? tsdb/lisp/redwoods.fasl
? tsdb/lisp/statistics.fasl
? tsdb/lisp/tsdb.fasl
? tsdb/lisp/tsql.fasl
? tsdb/lisp/utilities.fasl
Index: general/sbcl-patches.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/general/sbcl-patches.lisp,v
retrieving revision 1.4
diff -r1.4 sbcl-patches.lisp
73a74
> ;; [bmw] broken: &rest swallows up ALL ARGUMENTS
75,77c76,80
<                     &key (wait t) (error-output :output)
<                     &allow-other-keys)
<   (let* ((shell "/bin/sh")
---
>                     ;;&key (wait t) (error-output :output)
>                     ;;&allow-other-keys
> 		    )
>   (let* ((wait (second (member :wait args)))
> 	 (shell "/bin/sh")
80c83
<                          :wait wait args)))
---
>                          args)))
84,86c87,92
<         (let ((stdout (make-two-way-stream 
<                        (sb-ext:process-output process)
<                        (sb-ext:process-input process)))
---
>         (let ((stdout 
> 	       (if (sb-ext:process-input process)
> 		   (make-two-way-stream 
> 		    (sb-ext:process-output process)
> 		    (sb-ext:process-input process))
> 		 (sb-ext:process-output process)))
Index: main/parse.lsp
===================================================================
RCS file: /lingo/CVS/lkb/src/main/parse.lsp,v
retrieving revision 1.210
diff -r1.210 parse.lsp
1862,1864c1862,1865
<   (let* ((l-content (morpho-stem-edge-l-content edge))
< 	 (unifs (cdr l-content)))
<     (get-carg-from-unifs unifs)))
---
>   (and (typep edge 'morpho-stem-edge)
>        (let* ((l-content (morpho-stem-edge-l-content edge))
> 	      (unifs (cdr l-content)))
> 	 (get-carg-from-unifs unifs))))
Index: pvm/pvm-package.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/pvm/pvm-package.lisp,v
retrieving revision 1.19
diff -r1.19 pvm-package.lisp
19c19,21
<   (:use "COMMON-LISP" "FF" "MAKE")
---
>   (:use "COMMON-LISP" 
> 	#+:allegro "FF" #+:sbcl :sb-alien 
> 	"MAKE")
Index: systems/pvm.system
===================================================================
RCS file: /lingo/CVS/lkb/src/systems/pvm.system,v
retrieving revision 1.6
diff -r1.6 pvm.system
29a30,38
>       :initially-do
>       #+:sbcl (sb-alien:load-shared-object
> 	       (merge-pathnames
> 		(make-pathname :name "pvm" :type "so")
> 		 (dir-append
> 		  (dir-append (get-sources-dir "pvm") '(:relative "pvm"))
> 		  `(:relative ,make::%system-binaries%))
> 		))
>       #-:sbcl nil
31c40,41
<       ((:file "pvm")))
---
>       (#-:sbcl 
>        (:file "pvm")))
39c49,52
<        (:file "pvm.lisp")))))
---
>        (:file "pvm.lisp")
>        #+(and :sbcl (or :linux (and :sparc :svr4) :alpha :macosx))
>        (:file "pvm-sbcl.lisp")
>        ))))
Index: systems/tsdb.system
===================================================================
RCS file: /lingo/CVS/lkb/src/systems/tsdb.system,v
retrieving revision 1.66
diff -r1.66 tsdb.system
49c49
<   #+(and :allegro :linux :logon)
---
>   #+(and (or :allegro :acl-compat) :linux :logon)
70,71c70,74
<     #+(and :allegro (or :linux (and :sparc :svr4) :alpha :macosx) (not :slave))
<     (let ((display (system:getenv "DISPLAY")))
---
>     #+(and (or :allegro :acl-compat) (or :linux (and :sparc :svr4) :alpha :macosx) (not :slave))
>     (let ((display #+:allegro (system:getenv "DISPLAY")
> 		   #+:sbcl (sb-ext:posix-getenv "DISPLAY")
> 		   #-(or :allegro :sbcl) ""
> 		   ))
73,74c76,79
<         (funcall (symbol-function (read-from-string "tsdb::tsdb")) :podium)))
<     #-(and :allegro (or :linux (and :sparc :svr4) :alpha :macosx) (not :slave))
---
>         (funcall (symbol-function (read-from-string "tsdb::tsdb")) :podium)
> 	(funcall (symbol-function (read-from-string "tsdb::bmw-fix")))
> 	))
>     #-(and (or :allegro :acl-compat) (or :linux (and :sparc :svr4) :alpha :macosx) (not :slave))
102c107
<      #+(and :allegro (or :linux (and :sparc :svr4) :alpha :macosx))
---
>      #+(and (or :allegro :acl-compat) (or :linux (and :sparc :svr4) :alpha :macosx))
106a112,137
>       :initially-do
>       #+:sbcl (progn
> 		(sb-alien:load-shared-object
> 		 (merge-pathnames
> 		  (make-pathname :name "capi" :type "so")
> 		  (dir-append
> 		   (dir-append (get-sources-dir "tsdb") '(:relative "tsdb"))
> 		   `(:relative ,make::%system-binaries%))
> 		  ))
> 		(sb-alien:load-shared-object
> 		 (merge-pathnames
> 		  (make-pathname :name "gc" :type "so")
> 		  (dir-append
> 		   (dir-append (get-sources-dir "tsdb") '(:relative "tsdb"))
> 		   `(:relative ,make::%system-binaries%))
> 		  ))
> 		#+:bdb
> 		(sb-alien:load-shared-object
> 		 (merge-pathnames
> 		  (make-pathname :name "bdb" :type "so")
> 		  (dir-append
> 		   (dir-append (get-sources-dir "tsdb") '(:relative "tsdb"))
> 		   `(:relative ,make::%system-binaries%))
> 		  ))
> 		)
>       #-:sbcl nil
108,110c139,141
<       ((:file "capi")
<        (:file "gc")
<        #+:bdb
---
>       (#-:sbcl (:file "capi")
>        #-:sbcl (:file "gc")
>        #+(and :bdb (not :sbcl))
142c173
<        #+(and :allegro (or :linux (and :sparc :svr4) :alpha :macosx)) 
---
>        #+(and (or :allegro :acl-compat) (or :linux (and :sparc :svr4) :alpha :macosx)) 
145a177,178
>        #+(and :sbcl (or :linux (and :sparc :svr4) :alpha :macosx)) 
>        (:file "capi-sbcl")
172c205,206
<        #+(and :lkb :allegro :clim)
---
>        #+(or (and :lkb :allegro :clim)
> 	     (and :lkb :sbcl))
232c266
<     :depends-on (#+(and :allegro
---
>     :depends-on (#+(and (or :allegro :acl-compat)
Index: tsdb/lisp/capi.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/capi.lisp,v
retrieving revision 1.17
diff -r1.17 capi.lisp
18c18
< #+(version>= 5 0)
---
> #+(and :allegro-version>= (version>= 5 0))
29c29
<   #+(version>= 6 0) :strings-convert #+(version>= 6 0) t)
---
>   #+(and :allegro-version>= (version>= 6 0)) :strings-convert #+(and :allegro-version>= (version>= 6 0)) t)
31c31
< #-(version>= 5 0)
---
> #-(and :allegro-version>= (version>= 5 0))
50c50
< #+(version>= 5 0)
---
> #+(and :allegro-version>= (version>= 5 0))
62c62
<   #+(version>= 6 0) :strings-convert #+(version>= 6 0) t)
---
>   #+(and :allegro-version>= (version>= 6 0)) :strings-convert #+(and :allegro-version>= (version>= 6 0)) t)
64c64
< #-(version>= 5 0)
---
> #+(and :allegro-version>= (version>= 5 0))
87c87
< #+(version>= 5 0)
---
> #+(and :allegro-version>= (version>= 5 0))
94c94
<   #+(version>= 6 0) :strings-convert #+(version>= 6 0) t)
---
>   #+(and :allegro-version>= (version>= 6 0)) :strings-convert #+(and :allegro-version>= (version>= 6 0)) t)
96c96
< #-(version>= 5 0)
---
> #+(and :allegro-version>= (version>= 5 0))
Index: tsdb/lisp/commands.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/commands.lisp,v
retrieving revision 1.43
diff -r1.43 commands.lisp
45c45,47
<                    (madjust + (madjust * meter 0.5) (mduration imeter))))
---
>                    (madjust + (madjust * meter 0.5) 
> 			    (or (mduration imeter) 0)
> 			    )))
149c151,153
<          (wmeter (madjust + (madjust * meter 0.9) (mduration imeter)))
---
>          (wmeter (madjust + (madjust * meter 0.9) 
> 			  (or (mduration imeter) 0)
> 			  ))
205c209,211
<                           (/ (mduration wmeter) (length words)))))
---
>                           (/ 
> 			   (or (mduration wmeter) 0)
> 			   (length words)))))
236a243,250
> 
> (defun bmw-fix nil
>   ;;bmw -- fix some paths
>   (setf tsdb::*tsdb-home* (namestring (pathname tsdb::*tsdb-home*)))
>   ;(setf tsdb::*tsdb-podium* (namestring (pathname tsdb::*tsdb-podium*)))
>   (tsdb::SHUTDOWN-PODIUM)
>   (tsdb::INIT-PODIUM))
> 
239c253
<                   (file nil filep) (reset nil resetp) count target error)
---
>                   (file nil filep) (reset nil resetp) count target error)  
260a275
> 	 
300a316,317
> 	       #+:sbcl
> 	       (sb-ext:quit :unix-status  0)
467c484,486
<                       (/ (mduration meter) (+ (length directories) 1))))
---
>                       (/ 
> 		       (or (mduration meter) 0)
> 		       (+ (length directories) 1))))
582c601,603
<                       (/ (mduration meter) (length skeletons)))))
---
>                       (/ 
> 		       (or (mduration meter) 0)
> 		       (length skeletons)))))
729a751,754
> 
> (defun my-member (&rest rest)
>   (apply #'member rest))
> 
800c825
<                  (ignore-errors
---
>                  (progn ;;ignore-errors
805,806c830,833
<                       for name = (pathname-name file) 
<                       unless (member name '("CVS" "LVS") :test #'string=)
---
>                       ;;for name = (pathname-name file)
> 		      for name = (enough-namestring file
> 						    (make-pathname :directory old))	 
>                       unless (my-member name '("CVS" "LVS") :test #'string=)
Index: tsdb/lisp/derivations.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/derivations.lisp,v
retrieving revision 1.30
diff -r1.30 derivations.lisp
324c324,326
<            "~&~%(~d) `~a' --- success.~%")))))))
---
>            "~&~%(~d) `~a' --- success.~%" i-id 
> 	   "???" ;;bmw
> 	   )))))))
Index: tsdb/lisp/experiment.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/experiment.lisp,v
retrieving revision 1.2
diff -r1.2 experiment.lisp
170a171
> 		 #+:allegro	
Index: tsdb/lisp/features.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/features.lisp,v
retrieving revision 1.4
diff -r1.4 features.lisp
863c863
<       with forms = (lkb::edge-leaves edge)
---
>       with forms0 = (lkb::edge-leaves edge)
866c866
<       with tags = (if (zerop type)
---
>       with tags0 = (if (zerop type)
873c873
<                   (not (= (length forms) (length tags))))
---
>                   (not (= (length forms0) (length tags0))))
875,876c875,876
<       for forms on (append (cons 'lkb::^ forms) '(lkb::$))
<       for tags on (append (cons 'lkb::^ tags) '(lkb::$))
---
>       for forms on (append (cons 'lkb::^ forms0) '(lkb::$))
>       for tags on (append (cons 'lkb::^ tags0) '(lkb::$))
Index: tsdb/lisp/import.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/import.lisp,v
retrieving revision 1.24
diff -r1.24 import.lisp
74c74,76
<              (increment (when meter (/ (mduration meter) (length schema)))))
---
>              (increment (when meter (/ 
> 				     (or (mduration meter) 0)
> 				     (length schema)))))
124c126,128
<                    (madjust + (madjust * meter 0.3) (mduration rmeter))))
---
>                    (madjust + (madjust * meter 0.3) 
> 			    (or (mduration rmeter) 0)
> 			    )))
127c131,134
<                              (+ (mduration rmeter) (mduration imeter)))))
---
>                              (+ 
> 			      (or (mduration rmeter) 0) 
> 			      (or (mduration imeter) 0)
> 			      ))))
282c289,291
<                       (/ (mduration meter) lines)))
---
>                       (/ 
> 		       (or (mduration meter) 0)
> 		       lines)))
396c405,407
<                       (/ (mduration meter) lines)))
---
>                       (/ 
> 		       (or (mduration meter) 0)
> 		       lines)))
Index: tsdb/lisp/kf.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/kf.lisp,v
retrieving revision 1.2
diff -r1.2 kf.lisp
247c247,249
<            :error-output "/dev/null" :if-error-output-exists :append)
---
>            #-:sbcl :error-output #+:sbcl :error "/dev/null" 
> 	   #-:sbcl :if-error-output-exists #+:sbcl :if-error-exists :append
> 	   )
Index: tsdb/lisp/learner.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/learner.lisp,v
retrieving revision 1.3
diff -r1.3 learner.lisp
315c315
<                 (return (setf %model% model))
---
>                 (return #-:sbcl (setf %model% model) #+:sbcl model)
Index: tsdb/lisp/lkb-interface.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/lkb-interface.lisp,v
retrieving revision 1.117
diff -r1.117 lkb-interface.lisp
686c686
<                 (t :unknown))
---
>                 (t #-:sbcl :unknown #+:sbcl "???"))
734,735c734,738
<           (nconc (list id (edge-label edge) score start end)
<                  children)))))))
---
>           (nconc (list id 
> 		       (edge-label edge) ;; bmw???
> 		       score start end)
>                  children)
> 	  ))))))
Index: tsdb/lisp/macros.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/macros.lisp,v
retrieving revision 1.13
diff -r1.13 macros.lisp
103c103
<   
---
>   
105,111c105,118
<   `(if (= ,time -1)
<      -1
<      (/ ,time (cond
<                ((zerop ,granularity) 10)
<                ((= ,granularity 9808) 100)
<                ((>= ,granularity 9902) 1000)))))
< 
---
>   `(cond
>     ((and (numberp ,time)
> 	  (numberp ,granularity))
>      (if (= ,time -1)
> 	 -1
>        (my/ ,time (cond
> 		   ((zerop ,granularity) 10)
> 		   ((= ,granularity 9808) 100)
> 		   ((>= ,granularity 9902) 1000)
> 		   (t -1)
> 		   ))
>        ))
>     (t -1)))
> 
116,117c123,160
<   `(when ,meter (- (get-field :end ,meter) (get-field :start ,meter))))
< 
---
>   `(when ,meter (my- (get-field :end ,meter) (get-field :start ,meter))))
> 
> ;; bmw -- maths predicates that compile for non-number input too
> (defmacro my= (x y)
>   `(and (numberp ,x)
> 	(numberp ,y)
> 	(= ,x ,y)))
> 
> (defmacro my- (x y)
>   `(if (and (numberp ,x)
> 	    (numberp ,y))
>        (- ,x ,y)
>      ;;(error "numbers expected")
>      0
>      ))
> 
> (defmacro my+ (x y)
>   `(if (and (numberp ,x)
> 	    (numberp ,y))
>        (+ ,x ,y)
>      ;;(error "numbers expected")
>      0))
> 
> (defmacro my* (x y)
>   `(if (and (numberp ,x)
> 	    (numberp ,y))
>        (* ,x ,y)
>      ;;(error "numbers expected")
>      0))
> 
> (defmacro my/ (x y)
>   `(if (and (numberp ,x)
> 	    (numberp ,y))
>        (/ ,x ,y)
>      ;;(error "numbers expected")
>      0))
> 
> 
122c165,167
<             (duration (- end start)))
---
> 	    ;(start (if (numberp start0) start0 0))
> 	    ;(end (if (numberp end0) end0 0))
>             (duration (my- end start)))
124,127c169,172
<          (* (setf end (+ start (* duration ,value))))
<          (/ (setf end (+ start (/ duration ,value))))
<          (+ (setf start (+ start ,value))
<             (setf end (+ end ,value))))
---
>          (* (setf end (+ start (my* duration ,value))))
>          (/ (setf end (+ start (my/ duration ,value))))
>          (+ (setf start (my+ start ,value))
>             (setf end (my+ end ,value))))
Index: tsdb/lisp/mt.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/mt.lisp,v
retrieving revision 1.13
diff -r1.13 mt.lisp
886c886,889
<     (let* ((root (system:getenv "LOGONROOT"))
---
>     (let* ((root (or #+:allegro (system:getenv "LOGONROOT")
> 		     #+:sbcl (sb-ext:posix-getenv "LOGONROOT")
> 		     "")
> 		 )
916c919,920
<                       :wait t :output "/dev/null" :error-output "/dev/null")
---
>                       :wait t :output "/dev/null" 
> 		      #-:sbcl :error-output #+:sbcl :error "/dev/null")
918c922,923
<                       :wait t :output "/dev/null" :error-output "/dev/null")
---
>                       :wait t :output "/dev/null" 
> 		      #-:sbcl :error-output #+:sbcl :error "/dev/null")
920,921c925,927
<                       :wait t :output "/dev/null" :error-output "/dev/null"))
<         (sys:os-wait nil pid)
---
>                       :wait t :output "/dev/null" 
> 		      #-:sbcl :error-output #+:sbcl "/dev/null"))
>         #-:sbcl (sys:os-wait nil pid) ;;bmw
938c944,945
<          :error-output "/dev/null" :if-error-output-exists :append)
---
>          #-:sbcl :error-output #+:sbcl :error "/dev/null" 
> 	 #-:sbcl :if-error-output-exists #+:sbcl :if-error-exists :append)
1021c1028,1030
<           (let* ((root (system:getenv "LOGONROOT"))
---
>           (let* ((root #+:allegro (system:getenv "LOGONROOT")
> 		       #+:sbcl (sb-ext:posix-getenv "LOGONROOT")
> 		       )
1075c1084,1085
<        :error-output "/dev/null" :if-error-output-exists :append))
---
>        #-:sbcl :error-output #+:sbcl :error "/dev/null" 
>        #-:sbcl :if-error-output-exists #+:sbcl :if-error-exists :append))
Index: tsdb/lisp/podium.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/podium.lisp,v
retrieving revision 1.56
diff -r1.56 podium.lisp
51c51,53
<                :name "podium.tcl")))
---
>                :name "podium"
> 	       :type "tcl"
> 	       )))
87c89,90
<                    :output :stream :input :stream :error-output nil))
---
>                    :output :stream :input :stream 
> 		   #-:sbcl #-:sbcl :error-output #+:sbcl :error #-:sbcl nil))
92c95
<     (when *tsdb-wish-pid* (enable-gc-cursor *tsdb-wish-pid*))
---
>     #+:allegro (when *tsdb-wish-pid* (enable-gc-cursor *tsdb-wish-pid*))
192a196
>   #-:null
195c199,202
<                              #'podium-loop)))
---
>       #'podium-loop))
>   #+:null
>   (podium-loop) ;;bmw!!!
>   )
201c208
<   (enable-gc-cursor -1)
---
>   #+:allegro (enable-gc-cursor -1)
212c219
<                   :wait t :output "/dev/null" :error-output "/dev/null")
---
>                   :wait t :output "/dev/null" #-:sbcl :error-output #+:sbcl :error "/dev/null")
214c221
<                   :wait t :output "/dev/null" :error-output "/dev/null")
---
>                   :wait t :output "/dev/null" #-:sbcl :error-output #+:sbcl :error "/dev/null")
216,217c223,224
<                   :wait t :output "/dev/null" :error-output "/dev/null"))
<     (sys:os-wait nil *tsdb-wish-pid*)
---
>                   :wait t :output "/dev/null" #-:sbcl :error-output #+:sbcl :error "/dev/null"))
>     #+:allegro (sys:os-wait nil *tsdb-wish-pid*)
258c265,266
<        (ignore-errors
---
> ;;       (ignore-errors
>        (progn
282c290,291
<                 (when (or (null package) (find-package package))
---
> 		  (when (and #+:sbcl (stringp symbol)
> 			     (or (null package) (find-package package)))
387c396
<                                     "mysterious problem creating `~a'"
---
>                                     "mysterious[1] problem creating `~a'"
1169c1178
<          (format *tsdb-io* "podium-loop(): ~a~%" condition)))
---
>          (format *tsdb-io* "podium-loop()bmw: ~a~%" condition)))
Index: tsdb/lisp/process.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/process.lisp,v
retrieving revision 1.78
diff -r1.78 process.lisp
110c110,112
<                    (madjust + (madjust * meter 0.98) (mduration imeter))))
---
>                    (madjust + (madjust * meter 0.98) 
> 			    (or (mduration imeter) 0)
> 			    )))
193c195,197
<              (increment (when meter (/ (mduration pmeter) (length items)))))
---
>              (increment (when meter (/ 
> 				     (or (mduration pmeter) 0)
> 				     (length items)))))
Index: tsdb/lisp/pvm.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/pvm.lisp,v
retrieving revision 1.24
diff -r1.24 pvm.lisp
301,302c301,304
<                     (excl:exit (if (eq tag %pvm_task_fail%) 1 0) 
<                                :no-unwind t :quit t))))
---
>                     #-:sbcl (excl:exit (if (eq tag %pvm_task_fail%) 1 0) 
> 					  :no-unwind t :quit t)
> 		    #+:sbcl (sb-ext:quit :unix-status (if (eq tag %pvm_task_fail%) 1 0))
> 		    )))
304a307
> 		#-:sbcl
306c309,312
<                            :no-unwind t :quiet t))
---
>                            :no-unwind t :quiet t)
> 		#+:sbcl
> 		(sb-ext:quit :unix-status (if (eq tag %pvm_task_fail%) 1 0))
> 		)
313c319,323
<       (excl:exit 1 :no-unwind t :quiet t))))
---
>       #-:sbcl
>       (excl:exit 1 :no-unwind t :quiet t)
>       #+:sbcl
>       (sb-ext:quit :unix-status 1)
>       )))
Index: tsdb/lisp/redwoods.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/redwoods.lisp,v
retrieving revision 1.105
diff -r1.105 redwoods.lisp
116c116,118
<          (frame (unless #-:expand strip #+:expand nil
---
>          (frame 
> 	  #+:clim 
> 	  (unless #-:expand strip #+:expand nil
118c120
<                     (clim:make-application-frame 'lkb::compare-frame)
---
> 		      (clim:make-application-frame 'lkb::compare-frame)
120c122,123
<                      'lkb::compare-frame :frame-manager nil))))
---
>                      'lkb::compare-frame :frame-manager nil)))
> 	  #-:clim nil)
150,151c153,154
<               (setf (clim:frame-pretty-name frame) title)
<               (setf (lkb::compare-frame-controller frame) *current-process*))
---
>               #+:clim (setf (clim:frame-pretty-name frame) title)
>               #+:clim (setf (lkb::compare-frame-controller frame) *current-process*))
208c211
<         (clim:frame-exit frame)
---
>         #+:clim (clim:frame-exit frame)
210a214
>       #+:allegro
236c240
<             (and (mp:process-p %client%) (mp:process-active-p %client%)))
---
>             #+:allegro (and (mp:process-p %client%) (mp:process-active-p %client%)))
246c250
<            (lkb::*tree-automatic-update-p* 
---
>            #+:allegro (lkb::*tree-automatic-update-p* 
595c599,602
<           (process-add-arrest-reason *current-process* :wait)))
---
>           (process-add-arrest-reason 
> 	   #+:sbcl mp:*CURRENT-PROCESS*
> 	   #-:sbcl *current-process*
> 	   :wait)))
786c793
<     (lkb::make-discriminant :type (intern type :keyword) 
---
>     (lkb::make-discriminant :type (intern (string type) :keyword) 
1274c1281,1283
<                     thereis (when (= (derivation-id derivation) id)
---
>                     thereis (when (my= 
> 				   (or (derivation-id derivation) 0)
> 				   id)
1357c1366
<              :error-output nil)
---
>              #-:sbcl :error-output #+:sbcl :error nil)
2233c2242
<           for tag = (intern (gensym "") :keyword)
---
>           for tag = (intern (string (gensym "")) :keyword)
2587,2588c2596,2599
<                                  (= (derivation-id (first derivations1))
<                                     (derivation-id (first derivations2))))
---
>                                  (my= 
> 				  (or (derivation-id (first derivations1)) 0)
>                                   (or (derivation-id (first derivations2)) 0)
> 				      ))
3009c3020,3021
<                                            (system:getenv "LOGONROOT")
---
>                                            #+:allegro (system:getenv "LOGONROOT")
> 					   #+:sbcl (sb-ext:posix-getenv "LOGONROOT")
Index: tsdb/lisp/server.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/server.lisp,v
retrieving revision 1.2
diff -r1.2 server.lisp
103c103,104
<              :output nil :input nil :error-output nil)
---
>              :output nil :input nil 
> 	     #-:sbcl :error-output #+:sbcl :error nil)
Index: tsdb/lisp/statistics.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/statistics.lisp,v
retrieving revision 1.77
diff -r1.77 statistics.lisp
183c183
<          (attribute (intern name :keyword)))
---
>          (attribute (intern (string name) :keyword)))
190c190
<          (attribute (intern name :keyword))
---
>          (attribute (intern (string name) :keyword))
199c199
<          (attribute (intern name :keyword)))
---
>          (attribute (intern (string name) :keyword)))
385c385,386
<                                   (mduration pmeter))))
---
>                                   (or (mduration pmeter) 0)
> 				  )))
388c389,392
<                                   (+ (mduration pmeter) (mduration imeter)))
---
>                                   (+ 
> 				   (or (mduration pmeter) 0)
> 				   (or (mduration imeter) 0)
> 				   ))
392,394c396,398
<                                   (+ (mduration pmeter) 
<                                      (mduration rmeter)
<                                      (mduration imeter)))))
---
>                                   (+ (or (mduration pmeter) 0)
>                                      (or (mduration rmeter) 0)
>                                      (or (mduration imeter) 0)))))
681c685,686
<            (pmeter (madjust + (madjust * meter 0.5) (mduration imeter)))
---
>            (pmeter (madjust + (madjust * meter 0.5) 
> 			    (or (mduration imeter) 0)))
683c688
<                         (* (mduration meter)
---
>                         (* (or (mduration meter) 0)
1342c1347,1349
<                    (madjust + (madjust * meter 0.5) (mduration imeter))))
---
>                    (madjust + (madjust * meter 0.5) 
> 			    (or (mduration imeter) 0)
> 			    )))
1515c1522,1524
<          (nmeter (madjust + ometer (mduration ometer)))
---
>          (nmeter (madjust + ometer 
> 			  (or (mduration ometer) 0)
> 			  ))
1806c1815,1817
<          (nmeter (madjust + ometer (mduration ometer)))
---
>          (nmeter (madjust + ometer 
> 			  (or (mduration ometer) 0)
> 			  ))
2099,2101c2110,2112
<                        for otag = (intern (gensym "") :keyword)
<                        for ctag = (intern (gensym "") :keyword)
<                        for ntag = (intern (gensym "") :keyword)
---
>                        for otag = (intern (string (gensym "")) :keyword)
>                        for ctag = (intern (string (gensym "")) :keyword)
>                        for ntag = (intern (string (gensym "")) :keyword)
2212c2223
<                        for otag = (intern (gensym "") :keyword)
---
>                        for otag = (intern (string (gensym "")) :keyword)
2287c2298
<                        for ntag = (intern (gensym "") :keyword)
---
>                        for ntag = (intern (string (gensym "")) :keyword)
2434,2438c2445,2449
<         for otag = (intern (gensym "") :keyword)
<         for dtag = (intern (gensym "") :keyword)
<         for mtag = (intern (gensym "") :keyword)
<         for ttag = (intern (gensym "") :keyword)
<         for stag = (intern (gensym "") :keyword)
---
>         for otag = (intern (string (gensym "")) :keyword)
>         for dtag = (intern (string (gensym "")) :keyword)
>         for mtag = (intern (string (gensym "")) :keyword)
>         for ttag = (intern (string (gensym "")) :keyword)
>         for stag = (intern (string (gensym "")) :keyword)
2536c2547
<   (let* ((tag (intern tag :keyword)))
---
>   (let* ((tag (intern (string tag) :keyword)))
2580c2591
<                     for ntag = (unless browser (intern (gensym "") :keyword))
---
>                     for ntag = (unless browser (intern (string (gensym "")) :keyword))
2643a2655,2656
>   (declare (integer format))
>   
2690,2692c2703,2709
<                       (if (member field *statistics-exclude-tgc-p*)
<                         (convert-time (- value tgc) format)
<                         (convert-time value format)))
---
>                       ;(convert-time 0 (if (numberp format) format 10))
> 		      ;#+:null
> 		      (if (member field *statistics-exclude-tgc-p*)
>                         (convert-time (my- value tgc) format)
>                         (convert-time value format)
> 			)
> 		      )
3087c3104,3106
<          (nmeter (madjust + ometer (mduration ometer)))
---
>          (nmeter (madjust + ometer 
> 			  (or (mduration ometer) 0)
> 			  ))
3320c3339,3341
<          (dmeter (if division (madjust + ameter (mduration ameter)) nil))
---
>          (dmeter (if division (madjust + ameter 
> 				       (or (mduration ameter) 0)
> 				       ) nil))
3384c3405
<                             (intern attribute :keyword))
---
>                             (intern (string attribute) :keyword))
3398c3419
<                                          (- y tgc)
---
>                                          (my- y tgc)
3540c3561
<                       (intern attribute :keyword))
---
>                       (intern (string attribute) :keyword))
Index: tsdb/lisp/tsdb-package.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/tsdb-package.lisp,v
retrieving revision 1.6
diff -r1.6 tsdb-package.lisp
37c37,39
<         #+:allegro "FOREIGN-FUNCTIONS" #+:allegro "MULTIPROCESSING")
---
>         #+:allegro "FOREIGN-FUNCTIONS" #+:allegro "MULTIPROCESSING"
> 	#+:sbcl :sb-alien
> 	)
Index: tsdb/lisp/tsdb.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/tsdb.lisp,v
retrieving revision 1.44
diff -r1.44 tsdb.lisp
81c81
<              :error-output nil)
---
>              #-:sbcl :error-output #+:sbcl :error nil)
150c150,151
<                        :name "podium.tcl")))
---
>                        :name "podium"
> 		       :type "tcl")))
275c276
<              :input "/dev/null" :error-output nil))
---
>              :input "/dev/null" #-:sbcl :error-output #+:sbcl :error nil))
466,467c467,468
<                          :input "/dev/null" :error-output "/dev/null"
<                          :if-error-output-exists :append) 
---
>                          :input "/dev/null" #-:sbcl :error-output #+:sbcl :error "/dev/null"
>                          #-:sbcl :if-error-output-exists #+:sbcl :if-error-exists :append) 
470,471c471,472
<                          :input "/dev/null" :error-output "/dev/null"
<                          :if-error-output-exists :append)
---
>                          :input "/dev/null" #-:sbcl :error-output #+:sbcl :error "/dev/null"
>                          #-:sbcl :if-error-output-exists #+:sbcl :if-error-exists :append)
589c590,595
<          ((and common prefix (< (mismatch common prefix) (length prefix))))
---
>          ((and common prefix 
> 	       (or (listp prefix) ;;bmw
> 		   (vectorp prefix))
> 	       (or (listp common) ;;bmw
> 		   (vectorp common))
> 	       (< (mismatch common prefix) (length prefix))))
678c684
<       with schema = (read-database-schema (first profiles))
---
>       with schema0 = (read-database-schema (first profiles)) ;;bmw
680c686
<                     target :protocol :raw :verbose t :schema schema :allp t)
---
>                     target :protocol :raw :verbose t :schema schema0 :allp t) ;;bmw
1098c1104,1106
<              user date)))
---
>              user date
> 	     "???" ;;bmw
> 	     )))
Index: tsdb/lisp/tsql.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/tsql.lisp,v
retrieving revision 1.16
diff -r1.16 tsql.lisp
103c103
<                 (symbol (intern sort :keyword))
---
>                 (symbol (intern (string sort) :keyword))
115c115,116
<              (dmeter (madjust + (madjust * meter 0.5) (mduration rmeter)))
---
>              (dmeter (madjust + (madjust * meter 0.5) 
> 			      (or (mduration rmeter) 0)))
270c271
<                                  (tag (intern (gensym "") :keyword)))
---
>                                  (tag (intern (string (gensym "")) :keyword)))
354c355
<                     (symbol (intern sort :keyword))
---
>                     (symbol (intern (string sort) :keyword))
Index: tsdb/lisp/utilities.lisp
===================================================================
RCS file: /lingo/CVS/lkb/src/tsdb/lisp/utilities.lisp,v
retrieving revision 1.45
diff -r1.45 utilities.lisp
72c72
<       #-(version>= 5 0)
---
>       #-(and :allegro-version>= (version>= 5 0))
75c75
<       #-(version>= 5 0)
---
>       #-(and :allegro-version>= (version>= 5 0))
100,102c100,108
<   (loop
<       for key in '(:global :scavenge :new :old)
<       do (setf (gc-statistics key) 0))
---
>   (setf (gc-statistics :global) 0)
>   (setf (gc-statistics :scavenge) 0)
>   (setf (gc-statistics :new) 0)
>   (setf (gc-statistics :old) 0)
>   ;; [bmw] SBCL won't compile the code below
>   ;(loop
>   ;    for key in '(:global :scavenge :new :old)
>   ;    do 
>   ;	(setf (gc-statistics key) 0))
471c477,483
<                    ((string-equal month "dec") 12))))
---
>                    ((string-equal month "dec") 12)
> 		   ;; [bmw] SBCL can't prove that we never fall thru the cond
> 		   (t
> 		    (format t "ERROR: unable to extract month (tsdb::parse-date)")
> 		    (break)
> 		    1)
> 		   )))
553c565,567
<                      (make-pathname :directory data :name "item.gz"))
---
>                      (make-pathname :directory data 
> 				    :name "item"
> 				    :type "gz"))
560c574,577
<                        (make-pathname :directory data :name "result.gz"))))
---
>                        (make-pathname :directory data 
> 				      :name "result"
> 				      :type "gz"
> 				      ))))
566c583,586
<                        (make-pathname :directory data :name "rule.gz"))))
---
>                        (make-pathname :directory data 
> 				      :name "rule"
> 				      :type "gz"
> 				      ))))
572c592,595
<                        (make-pathname :directory data :name "tree.gz"))))
---
>                        (make-pathname :directory data 
> 				      :name "tree"
> 				      :type "gz"
> 				      ))))
578c601,604
<                        (make-pathname :directory data :name "score.gz"))))
---
>                        (make-pathname :directory data 
> 				      :name "score"
> 				      :type "gz"
> 				      ))))
585c611,612
<                                                    "fc.bdb")))))
---
>                                                    "fc")
> 					 :type "bdb"))))
596a624,626
>   #+:sbcl ;;bmw -- SBCL chokes if we continue
>   (when (eq data :all)
>     (return-from virtual-profile-p))
649a680
>     (ignore-errors
663c694
<     target))
---
>     target)))