| 1 | ;;; -*- Mode: Lisp -*- |
|---|
| 2 | |
|---|
| 3 | ;;; Possible code for inclusion in the Armed Bear startup file |
|---|
| 4 | ;;; #p"~/.abclrc" |
|---|
| 5 | |
|---|
| 6 | |
|---|
| 7 | ;;; Some commonly useful customizations to ABCL output |
|---|
| 8 | (setf |
|---|
| 9 | ;; Truncate the output of java.lang.String object after this many |
|---|
| 10 | ;; characters, outputing "...." afterwards. |
|---|
| 11 | ;; The default is 32. Is this too small? |
|---|
| 12 | *java-object-to-string-length* 8192 |
|---|
| 13 | |
|---|
| 14 | ;; Show what is being loaded and the loading time. |
|---|
| 15 | ;; Helpful on slower systems to figure out what is taking the time. |
|---|
| 16 | *load-verbose* t |
|---|
| 17 | |
|---|
| 18 | ;; Emit warnings from debug code |
|---|
| 19 | sys:*debug-warn* t |
|---|
| 20 | |
|---|
| 21 | ;; Bring some order to the forms output by the REPL |
|---|
| 22 | ;; Not currently the default, but it probably should be after we |
|---|
| 23 | ;; rework the pretty printer and/or streams to properly work with |
|---|
| 24 | ;; GRAY-STREAMS: |
|---|
| 25 | *print-pretty* t) |
|---|
| 26 | |
|---|
| 27 | #-quicklisp |
|---|
| 28 | (let ((quicklisp-local #P"~/quicklisp/setup.lisp") |
|---|
| 29 | (quicklisp-remote #p"http://beta.quicklisp.org/quicklisp.lisp")) |
|---|
| 30 | (unless (probe-file quicklisp-local) |
|---|
| 31 | (when (probe-file quicklisp-remote) ;;; XXX possibly search for a proxy÷ |
|---|
| 32 | (load quicklisp-remote) |
|---|
| 33 | (funcall (intern (symbol-name 'install) :quicklisp-quickstart)))) |
|---|
| 34 | (when (probe-file quicklisp-local) |
|---|
| 35 | (load quicklisp-local))) |
|---|
| 36 | |
|---|
| 37 | ;; |
|---|
| 38 | (require :asdf) |
|---|
| 39 | (require :abcl-contrib) |
|---|
| 40 | (require :abcl-asdf) |
|---|
| 41 | (setf abcl-asdf::*maven-http-proxy* "http://localhost:3128/") |
|---|
| 42 | |
|---|
| 43 | ;;; Customize the procedure used by CL:DISASSEMBLE |
|---|
| 44 | (setf *disassembler* |
|---|
| 45 | (let ((strategies (list (lambda (p) |
|---|
| 46 | (let ((class (make-pathname :name (pathname-name p))) |
|---|
| 47 | (path (directory-namestring p))) |
|---|
| 48 | (format nil "javap -c -l -verbose -classpath ~A ~A" path class))) |
|---|
| 49 | "/Users/evenson/bin/jad -a -p" |
|---|
| 50 | (lambda (p) |
|---|
| 51 | (format nil "java -jar ~ |
|---|
| 52 | /Users/evenson/work/classfileanalyzer/classfileanalyzer.jar ~A" |
|---|
| 53 | p))))) |
|---|
| 54 | (first strategies))) |
|---|
| 55 | |
|---|
| 56 | (defparameter *ansi-tests-directory* |
|---|
| 57 | #-(or windows mswindows win32) |
|---|
| 58 | #p"/home/peter/xcl/x/ansi-tests/" |
|---|
| 59 | #+(or windows mswindows win32) |
|---|
| 60 | #p"c:\\msys\\1.0\\home\\peter\\xcl\\x\ansi-tests\\") |
|---|
| 61 | |
|---|
| 62 | (defun run-ansi-tests (&optional (compile-tests t)) |
|---|
| 63 | (format t "COMPILE-TESTS is ~A~%" compile-tests) |
|---|
| 64 | (let ((*default-pathname-defaults* *ansi-tests-directory*)) |
|---|
| 65 | #+(and abcl unix) |
|---|
| 66 | (run-shell-command "make clean" :directory *default-pathname-defaults*) |
|---|
| 67 | (time (load (if compile-tests "compileit.lsp" "doit.lsp"))))) |
|---|
| 68 | |
|---|
| 69 | (defun run-random-tests (size nvars count) |
|---|
| 70 | (let ((*default-pathname-defaults* *ansi-tests-directory*)) |
|---|
| 71 | (load "gclload1.lsp") |
|---|
| 72 | (load "random-int-form.lsp") |
|---|
| 73 | (let ((f (find-symbol "TEST-RANDOM-INTEGER-FORMS" "CL-TEST"))) |
|---|
| 74 | (when f |
|---|
| 75 | (let (#+abcl (*suppress-compiler-warnings* t) |
|---|
| 76 | (*random-state* (make-random-state t))) |
|---|
| 77 | (time (funcall f size nvars count))))))) |
|---|
| 78 | |
|---|
| 79 | #+(or abcl sbcl clisp) |
|---|
| 80 | (defun test-cl-ppcre () |
|---|
| 81 | #+abcl (require "JVM") |
|---|
| 82 | (let ((*default-pathname-defaults* #-(or windows mswindows win32) |
|---|
| 83 | #p"/home/peter/cl-ppcre-1.2.19/" |
|---|
| 84 | #+(or windows mswindows win32) |
|---|
| 85 | #p"c:\\cygwin\\home\\peter\\cl-ppcre-1.2.19\\")) |
|---|
| 86 | #+abcl |
|---|
| 87 | (map nil #'delete-file (directory "*.abcl")) |
|---|
| 88 | #+sbcl |
|---|
| 89 | (map nil #'delete-file (directory "*.fasl")) |
|---|
| 90 | (load "load.lisp") |
|---|
| 91 | (let ((f (find-symbol "TEST" "CL-PPCRE-TEST"))) |
|---|
| 92 | (when f |
|---|
| 93 | #+abcl (gc) |
|---|
| 94 | (time (funcall f)) |
|---|
| 95 | #+abcl (gc) |
|---|
| 96 | (time (funcall f)))))) |
|---|
| 97 | |
|---|
| 98 | #+abcl |
|---|
| 99 | (defun run-other-tests () |
|---|
| 100 | (test-cl-ppcre) |
|---|
| 101 | (let ((*default-pathname-defaults* "/home/peter/salza-0.7.2/")) |
|---|
| 102 | (map nil #'delete-file (directory "*.abcl")) |
|---|
| 103 | (load "/home/peter/test-salza.lisp") |
|---|
| 104 | (gc) |
|---|
| 105 | (test-salza) |
|---|
| 106 | (gc) |
|---|
| 107 | (test-salza))) |
|---|
| 108 | |
|---|
| 109 | #+abcl |
|---|
| 110 | (autoload 'do-tests "rt.lisp") |
|---|
| 111 | |
|---|
| 112 | #+allegro |
|---|
| 113 | (top-level:alias "ap" (arg) (apropos arg nil nil t)) |
|---|
| 114 | #+allegro |
|---|
| 115 | (top-level:alias "de" (arg) (describe (eval arg))) |
|---|
| 116 | |
|---|
| 117 | #+cmu |
|---|
| 118 | (setf *gc-verbose* nil) |
|---|
| 119 | |
|---|
| 120 | ;; #+sbcl |
|---|
| 121 | ;; (require '#:asdf) |
|---|
| 122 | ;; #+sbcl |
|---|
| 123 | ;; (require '#:sb-aclrepl) |
|---|