Commits

Anonymous committed 1256732

Adding files to sync with ilisp 5.12.0 release

Comments (0)

Files changed (4)

+;;; -*- Mode: Lisp; tab-width: 4 -*-
+;;; cormanlisp.lisp --
+
+;;; This file is part of ILISP.
+;;; Version: 5.8 - 5.10
+;;;
+;;; Copyright (C) 1990, 1991, 1992, 1993 Chris McConnell
+;;;               1993, 1994 Ivan Vasquez
+;;;               1994, 1995, 1996 Marco Antoniotti and Rick Busdiecker
+;;;               1996 Marco Antoniotti and Rick Campbell
+;;;		  	      2000 Reini Urban
+;;;
+;;; Other authors' names for which this Copyright notice also holds
+;;; may appear later in this file.
+;;;
+;;; ILISP is freely redistributable under the terms found in the file
+;;; COPYING.
+
+;;;
+;;; Cormanlisp initializations
+;;; Author: Reini Urban <rurban@x-ray.at>
+;;;
+(in-package "ILISP")
+
+(defun ilisp-source-files (symbol package type)
+  "Print each file for PACKAGE:SYMBOL's TYPE definition on a line and
+return T if successful."
+  (declare (ignore type))
+  (ilisp-errors
+   (let* ((symbol (ilisp-find-symbol symbol package))
+	  (type t)
+	  ;;(type (if (equal type "any") t (ilisp-find-symbol type "keyword")))
+	  (paths (when symbol (debug::function-source-file symbol))))
+     (if paths
+	 (progn
+	   (if (eq type t)
+	       (dolist (path (remove-duplicates paths
+						:key #'cdr :test #'equal))
+		 (print (namestring (cdr path))))
+	       (print (namestring paths)))
+	   t)
+	 nil))))
+
+(export '(ilisp-source-files))
+
+;;; ILISP Patches for cormanlisp <= 2.0
+
+(in-package :common-lisp)
+
+(defun inspect (symbol)
+  (describe symbol))
+
+;; not really needed with my cl-ilisp.lisp patch, but for legacy sake
+(defun special-form-p (symbol)
+  (special-operator-p symbol))
+
+(unless (fboundp 'compile-file-pathname)
+
+(defvar fasl-file-extension ".fasl")
+;;;
+;;; Common Lisp COMPILE-FILE-PATHNAME function.
+;;;
+;;; CLtL2: "If an implementation supports additional keyword arguments to
+;;; compile-file, compile-file-pathname must accept the same arguments."
+;;;
+(defun compile-file-pathname (input-file &key 
+                                         (output-file nil)
+                                         (verbose *compile-verbose*)
+                                         (print *compile-print*)
+                                         (external-format :default))
+  (create-pathname-from-string
+   (compile-file-name  (namestring (pathname input-file))
+					  :output-file output-file
+					  :verbose     verbose
+					  :print       print
+					  :external-format external-format)))
+
+(defun compile-file-name (input-file &key 
+									 (output-file nil)
+									 (verbose *compile-verbose*)
+									 (print *compile-print*)
+									 (external-format :default))
+  "Returns the compiled filename string for the input-file string"
+  (declare (ignore verbose external-format print))
+  (if (null output-file)
+      (if (string-equal
+           (subseq input-file 
+                   (- (length input-file)(length lisp-file-extension))
+                   (length input-file))
+           lisp-file-extension)
+          (concatenate 'string 
+                       (subseq input-file 
+                               0
+                               (- (length input-file)
+								  (length lisp-file-extension)))
+                       fasl-file-extension)
+        (concatenate 'string input-file fasl-file-extension))
+     (namestring (pathname output-file))))
+
+) ; eof compile-file-pathname patch
+
+(unless (fboundp 'readtable-case)
+  
+;;;
+;;; Common Lisp READTABLE-CASE accessor
+;;;
+;;; Note: at booting check-type,warn,defun setf are not defined
+;;;
+(defun readtable-case (readtbl)
+  (if (macro-function 'check-type)	; booting
+	  (check-type readtbl readtable)
+	;; else
+    (if (not (readtablep readtbl))
+		(error "Argument is no valid readtable: ~A" readtbl)))
+  (uref readtbl readtable-case-offset))
+
+(defun set-readtable-case (readtbl value)
+  "For compatibility only. All values except :UPCASE are ignored."
+  (let ((valid-case '(:upcase))
+		(ignored-case '(:downcase :preserve :invert)))
+	(if (macro-function 'check-type)	; booting
+		(progn
+		  (check-type readtbl readtable)
+		  (check-type value symbol)))
+	(cond 
+	 ((member value valid-case)
+	  (setf (uref readtbl readtable-case-offset) value))
+	 ((member value ignored-case)
+	  (error "SET-READTABLE-CASE: only :UPCASE supported: ~A" 
+			value))
+	 (T
+	  (error "Argument is no valid readtable-case: ~A, expected ~A"
+			 value valid-case)))))
+
+;;; bootstrapping
+(set-readtable-case *readtable* ':upcase)
+(set-readtable-case *common-lisp-readtable* ':upcase)
+
+(defsetf readtable-case set-readtable-case)
+
+)  ; eof readtable-case patch
+
+(in-package :ilisp)
+@echo off
+
+rem --------------------------------------------------------------
+rem Be sure to customize the following 3 variables for your system
+rem --------------------------------------------------------------
+set EMACSDIR=c:\emacs
+set ILISPDIR=c:\home\site\ilisp
+set EMACS=%EMACSDIR%\bin\emacs.exe
+
+
+cd %ILISPDIR%
+
+%EMACS% -batch -l ilisp-mak.el
+
+copy /B ilisp-def.elc+ilisp-sym.elc+ilisp-inp.elc+ilisp-ind.elc+ilisp-prc.elc+ilisp-val.elc+ilisp-out.elc ilisp-all.elc
+copy /B ilisp-all.elc+ilisp-mov.elc+ilisp-key.elc+ilisp-prn.elc+ilisp-low.elc+ilisp-doc.elc+ilisp-ext.elc+ilisp-mod.elc ilisp-all.elc
+copy /B ilisp-all.elc+ilisp-dia.elc+ilisp-cmt.elc+ilisp-rng.elc+ilisp-hnd.elc+ilisp-utl.elc+ilisp-cmp.elc+ilisp-kil.elc ilisp-all.elc
+copy /B ilisp-all.elc+ilisp-snd.elc+ilisp-xfr.elc+ilisp-hi.elc+ilisp-aut.elc+ilisp-cl.elc+ilisp-cmu.elc+ilisp-sbcl.elc ilisp-all.elc
+copy /B ilisp-all.elc+ilisp-cl-easy-menu.elc+ilisp-acl.elc+ilisp-kcl.elc+ilisp-luc.elc+ilisp-sch.elc+ilisp-hlw.elc ilisp-all.elc
+copy /B ilisp-all.elc+ilisp-xls.elc+ilisp-chs.elc+ilisp-openmcl.elc ilisp-all.elc
+
+del ilisp-def.elc ilisp-sym.elc ilisp-inp.elc ilisp-ind.elc ilisp-prc.elc ilisp-val.elc ilisp-out.elc ilisp-mov.elc 
+del ilisp-key.elc ilisp-prn.elc ilisp-low.elc ilisp-doc.elc ilisp-ext.elc ilisp-mod.elc ilisp-dia.elc ilisp-cmt.elc 
+del ilisp-rng.elc ilisp-hnd.elc ilisp-utl.elc ilisp-cmp.elc ilisp-kil.elc ilisp-snd.elc ilisp-xfr.elc ilisp-hi.elc 
+del ilisp-aut.elc ilisp-cl.elc ilisp-cmu.elc ilisp-sbcl.elc ilisp-cl-easy-menu.elc ilisp-acl.elc ilisp-kcl.elc 
+del ilisp-luc.elc ilisp-sch.elc ilisp-hlw.elc ilisp-xls.elc ilisp-chs.elc ilisp-openmcl.elc
+
+cd docs
+%EMACS% -batch -q -no-site-file ilisp.texi -l texinfmt -f texinfo-format-buffer -f save-buffer
+cd .. 
+;;; -*- Mode: Emacs-Lisp -*-
+
+;;; ilfsf21.el --
+;;;
+;;; This file is part of ILISP.
+;;; Please refer to the file COPYING for copyrights and licensing
+;;; information.
+;;; Please refer to the file ACKNOWLEGDEMENTS for an (incomplete) list
+;;; of present and past contributors.
+;;;
+;;; $Id$
+
+
+;;;============================================================================
+;;; Functions
+
+(defun ilisp-get-input-ring ()
+  "Use instead of get-input-ring coming-input-ring or input-ring."
+  comint-input-ring)
+
+
+(defun ilisp-ring-insert (ring input)
+  (ring-insert ring input))
+
+
+(defun ilisp-temp-buffer-show-function-symbol ()
+  'temp-buffer-show-function)
+
+
+(defun set-ilisp-temp-buffer-show-function (val)
+  (setq temp-buffer-show-function val))
+
+
+(defun ilisp-temp-buffer-show-function ()
+  temp-buffer-show-function)
+
+
+(defun ilisp-input-ring-index ()
+  comint-input-ring-index)
+
+
+(defun set-ilisp-input-ring-index (n)
+  (setq comint-input-ring-index n))
+
+
+(defun ilisp-input-ring-size ()
+  comint-input-ring-size)
+
+
+(defun set-ilisp-input-ring-size (n)
+  (setq comint-input-ring-size n))
+
+
+;;;============================================================================
+;;; Epilogue
+
+(provide 'compat-fsf-21)
+
+;;; end of file -- ilfsf21.el --
+;;; -*- Mode: Emacs-Lisp -*-
+
+;;; ilisp-ccl.el --
+
+;;; This file is part of ILISP.
+;;; Version: 5.12
+;;;
+;;; Copyright (C) 1990, 1991, 1992, 1993 Chris McConnell
+;;;               1993, 1994 Ivan Vasquez
+;;;               1994, 1995, 1996 Marco Antoniotti and Rick Busdiecker
+;;;               1996, 1997, 1998, 1999 Marco Antoniotti and Rick Campbell
+;;;		  2000 Reini Urban
+;;;
+;;; Other authors' names for which this Copyright notice also holds
+;;; may appear later in this file.
+;;;
+;;; Send mail to 'majordomo@cons.org' to be included in the
+;;; ILISP mailing list. 'ilisp@cons.org' is the general ILISP
+;;; mailing list were bugs and improvements are discussed.
+;;;
+;;; ILISP is freely redistributable under the terms found in the file
+;;; COPYING.
+
+;;;
+;;; Dialect definition for Corman Common Lisp by Roger Corman 
+;;; Since 1.4 (fixed with 1.41) there is a debugger with corman.
+
+(require 'cl)
+
+;;; cormanlisp --
+;;;
+;;; Notes:
+;;; 2000-09-08 16:01:20 rurban
+;;;   created, based on chs and acl
+;;; Problems: 
+;;;  * win32 pathdelims get lost on C-c l, but a manual load works.
+;;;  * subsequent invocations load the next lisp (clisp in my case) 
+;;;    instead of corman.
+
+; Hint:
+; Best is to load cl-ilisp.lisp, ilisp-pkg.lisp and cormanlisp.lisp 
+; with all required corman patches into cormanlisp at first and save 
+; the image.
+;
+; On cygwin (X)Emacs we have to convert the filenames passed to the lisp.
+; ilisp-hi.el:   file-name-hack for elisp
+; cl-ilisp.lisp: ilisp-w32-fix-filenames for lisp
+; ilisp-cl-easy-menu.el
+;   added a Debugger menu section for XEmacs (easy-menu)
+
+; Old ILISP Patches for 5.11:
+;   http://xarch.tu-graz.ac.at/autocad/lisp/cormanlisp/ilisp-ccl-5.11.zip
+; Cormanlisp fixes: (required for at least CCL 1.5)
+;   http://xarch.tu-graz.ac.at/autocad/lisp/cormanlisp/ccl-1.5-patches.zip
+
+; Todo: custom vars for these.
+; We really should query the registry. The dll is registered there, 
+; so we would also know the version.
+; A XEmacs dynamic w32reg emodule is almost ready:
+;   http://xarch.tu-graz.ac.at/autocad/lsp_tools/ntemacs/emodules/w32reg/w32reg.c
+
+; define these in ~/.ilisp
+;(setq *cormanlisp-dir* "P:/CORMAN~1/CORMAN~1.5/")
+(unless (boundp '*cormanlisp-dir*)
+  (setq *cormanlisp-dir* "C:/PROGRAM~1/CORMAN~1/CORMAN~1.5/"))
+
+(unless (boundp 'cormanlisp-program)
+  (setq cormanlisp-program
+	(concatenate 'string *cormanlisp-dir* "clconsole.exe" 
+		     " -image " *cormanlisp-dir* "CormanLisp.img")))
+
+;(defvar ilisp-cormanlisp-init-file
+;	(concatenate 'string *cormanlisp-dir* "init.lisp"))
+(defvar ilisp-cormanlisp-init-file "cormanlisp.lisp")
+
+(defdialect cormanlisp "CormanLisp" common-lisp
+  (ilisp-load-init 'ilisp-package-kludge ilisp-cl-ilisp-package-file)
+  (ilisp-load-init 'common-lisp ilisp-cl-ilisp-init-file)
+  (ilisp-load-init 'cormanlisp ilisp-cormanlisp-init-file)
+  (setq
+     ilisp-error-regexp  "\\(ILISP:[^\n]*\\)\\|\\(^;;; An error occurred\\)"
+     ilisp-find-source-command  "(ILISP:ilisp-source-files \"%s\" \"%s\" \"%s\")"
+     ilisp-reset "(debug::debugger-continue)"
+     ilisp-block-command "(progn %s)"
+     ;; cl overrides
+     ilisp-inspect-command nil		 ; no inspector
+     ilisp-load-no-compile-query t       ; don't ask "Compile first"
+;     ilisp-binary-extension nil ; "fasl" ; avoid compilation
+;     ilisp-compile-file-command nil      ; avoid compilation
+
+;     ilisp-*use-frame-for-output* nil	  ; this should go to .ilisp
+;     ilisp-bindings-*bind-space-p* nil    ; this should go to .ilisp
+     ;; default
+     comint-prompt-regexp "^?*"
+     ;; comint-prompt-regexp "^\\([0-9]+\\. Break \\[[0-9]+\\]> \\|^[^>]*> \\)"
+     comint-fix-error ":C 1"
+     comint-continue ":C"
+   )
+
+  ;; ILD Support. NIL values mean that more work is needed or that the
+  ;; particular command is not available
+
+  (setq ild-abort-string ":QUIT"
+	ild-continue-string ":C 1"
+	ild-next-string ":NEXT"
+	ild-next-string-arg nil
+	ild-previous-string ":PREVIOUS"
+	ild-previous-string-arg nil
+	ild-top-string ":TOP"
+	ild-bottom-string ":BOTTOM"
+	ild-backtrace-string ":BACKTRACE"
+	ild-locals-string nil
+	ild-local-string-arg nil
+	;ild-return-string "return"
+	;ild-retry-string "redo"
+	;ild-trap-on-exit-string "break+"
+	))
+
+(provide 'ilisp-ccl)
+
+;;; end of file -- ilisp-chs.el --