packages.lisp 6.3 KB
Newer Older
1 2 3 4 5 6 7
;;;; -*- mode:lisp;coding:utf-8 -*-
;;;;**************************************************************************
;;;;FILE:               packages.lisp
;;;;LANGUAGE:           Common-Lisp
;;;;SYSTEM:             Common-Lisp
;;;;USER-INTERFACE:     NONE
;;;;DESCRIPTION
8
;;;;
9
;;;;    Defines the packages for the LSE system.
10
;;;;
11 12 13 14 15 16
;;;;AUTHORS
;;;;    <PJB> Pascal J. Bourguignon <pjb@informatimago.com>
;;;;MODIFICATIONS
;;;;    2012-02-01 <PJB> Extracted from loader.lisp.
;;;;BUGS
;;;;LEGAL
17
;;;;    AGPL3
18
;;;;
19
;;;;    Copyright Pascal J. Bourguignon 2012 - 2014
20
;;;;
21 22 23 24
;;;;    This program is free software: you can redistribute it and/or modify
;;;;    it under the terms of the GNU Affero General Public License as published by
;;;;    the Free Software Foundation, either version 3 of the License, or
;;;;    (at your option) any later version.
25
;;;;
26 27 28 29
;;;;    This program is distributed in the hope that it will be useful,
;;;;    but WITHOUT ANY WARRANTY; without even the implied warranty of
;;;;    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;;;    GNU Affero General Public License for more details.
30
;;;;
31
;;;;    You should have received a copy of the GNU Affero General Public License
32
;;;;    along with this program.  If not, see http://www.gnu.org/licenses/
33
;;;;**************************************************************************
34 35
(eval-when (:compile-toplevel :load-toplevel :execute)
  (setf *readtable* (copy-readtable nil)))
36

37 38
(defpackage "COM.INFORMATIMAGO.LSE.OS"
  (:use "COMMON-LISP")
39 40 41 42 43
  (:export
   "*EXTERNAL-FORMAT/ISO-8859-1*" "*EXTERNAL-FORMAT/UTF-8*"
   "GETENV" "GETUID"
   "RUN-SHELL-COMMAND"
   "MAKE-FD-STREAM" "FD-STREAM-P" "FD-STREAM-FD"
44
   "CHDIR" "GETCWD"
45
   "SHELL" "RUN-PROGRAM" "QUIT" "ARGUMENTS" "PROGRAM-NAME"
46
   "UNAME" "STTY")
47 48 49 50 51 52 53 54 55 56
  (:documentation "A portability layer for a few OS operators."))

(defpackage "COM.INFORMATIMAGO.LSE.BYTE-CODE"
  (:nicknames "BC")
  (:use)
  (:documentation "The package where the byte-code symbols for the LSE VM are interned."))

(defpackage "COM.INFORMATIMAGO.LSE.IDENTIFIERS"
  (:nicknames "ID")
  (:use)
57
  (:documentation "The package where the identifiers for the LSE language are interned."))
58

59
(defpackage "COM.INFORMATIMAGO.LSE"
60 61
  (:nicknames "LSE")
  (:use "COMMON-LISP"
Pascal J. Bourguignon's avatar
Pascal J. Bourguignon committed
62
        "SPLIT-SEQUENCE" "BABEL"
63 64

        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.UTILITY"
65
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.SEQUENCE"
66
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.ARRAY"
67
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.LIST"
68
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.CHARACTER"
69
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.STRING"
70
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.STREAM"
71
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.FILE"
72 73
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.ASCII"
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.PMATCH"
74
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.PEEK-STREAM"
75

76
        "COM.INFORMATIMAGO.COMMON-LISP.PARSER.SCANNER"
77

78
        "COM.INFORMATIMAGO.ENVIRONMENT"
79
        "COM.INFORMATIMAGO.SIGNAL"
80 81 82
        "COM.INFORMATIMAGO.RDP"

        "COM.INFORMATIMAGO.LSE.OS")
83
  (:shadow "DOCUMENTATION")
84
  (:export
85
   "LSE"
86 87
   "LSE-ERROR"

88
   "DONNEE-LSE" "PARSE-DONNEE-LSE"
89 90

   "DEFCHAPTER"
91 92 93 94 95 96 97 98 99 100

   "GRAMMAR-ALL-NON-TERMINALS"
   "GRAMMAR-ALL-TERMINALS"
   "GRAMMAR-NAME"
   "GRAMMAR-NAMED"
   "GRAMMAR-RULES"
   "GRAMMAR-SKIP-SPACES"
   "GRAMMAR-START"
   "GRAMMAR-TERMINALS"
   "CLEAN-UP-RULE"
101

102 103
   "TERMINAL" "TERMINAL-INITIALIZE" "TERMINAL-FINALIZE"
   "TERMINAL-COLUMNS" "TERMINAL-ROWS" "TERMINAL-INPUT-STREAM"
104 105
   "TERMINAL-ECHO"
   "TERMINAL-KEYSYM-LABEL" "TERMINAL-KEYSYM-CHARACTER" "TERMINAL-CHARACTER-KEYSYM"
106
   "TERMINAL-OUTPUT-STREAM" "TERMINAL-RING-BELL"
107
   "TERMINAL-CARRIAGE-RETURN" "TERMINAL-LINE-FEED" "TERMINAL-NEW-LINE"
108
   "TERMINAL-WRITE-STRING" "TERMINAL-FINISH-OUTPUT"
109 110
   "TERMINAL-YIELD"
   "TERMINAL-GET-NEXT-CHAR"
111
   "TERMINAL-SKIP-CHARACTERS" "TERMINAL-READ-BUFFERED-CHARACTER"
112

113 114 115
   "STANDARD-TERMINAL"
   "INPUT-STREAM" "OUTPUT-STREAM"
   "WITH-TEMPORARY-ECHO"
116

117
   "WITH-PAGER"
118
   "OUTPUT-SUBSTITUTE"
119 120
   "IO-TERMINAL-OUTPUT-P" "IO-TERMINAL-INPUT-P"
   "IO-TAPE-OUTPUT-P" "IO-TAPE-INPUT-P" "IO-BELL"
121
   "IO-CARRIAGE-RETURN" "IO-LINE-FEED"
122
   "IO-NEW-LINE" "IO-FINISH-OUTPUT"
123
   "IO-READ-LINE" "IO-READ-STRING" "IO-READ-NUMBER"
124
   "IO-ECHO" "IO-FORMAT"
125 126 127 128 129 130
   "*DECTECH-LEFTWARDS-ARROW*"
   "*DECTECH-UPWARDS-ARROW*"
   "*UNICODE-LEFTWARDS-ARROW*"
   "*UNICODE-UPWARDS-ARROW*"
   "*UNICODE-HALFWIDTH-LEFTWARDS-ARROW*"
   "*UNICODE-HALFWIDTH-UPWARDS-ARROW*"
131 132

   "*TASK*" "TASK"
133
   "TASK-TERMINAL"
134 135
   "TASK-UNICODE" "TASK-ARROWS"
   "TASK-CASE-INSENSITIVE" "TASK-UPCASE-OUTPUT" "TASK-ACCENTED-OUTPUT"
136
   "TASK-ALLOW-BELL-OUTPUT"
137
   "TASK-SCRIPT-PATH" "TASK-SCRIPT-ARGUMENTS" "TASK-SCRIPT-DEBUG"
138
   "TASK-INTERRUPTION" "TASK-SIGNAL" "TASK-INTERRUPT"
139
   "TASK-VM"
140
   "TASK-CLOSE-ALL-FILES"
141

142
   "COMMAND-REPL" "COMMAND-RUN-SCRIPT" "COMMAND-STATUS"
143
   "COMMAND-EVAL-LINE"
144

145
   "VERSION" "LONG-VERSION" "*VERSION*" "*COPYRIGHT*" "*TITLE-BANNER*" "VERSIONS"
146 147

   "DAT"
148
   "PRET"
pjb's avatar
pjb committed
149 150

   "*CURRENT-DIRECTORY*" "*CURRENT-SHELF*" "*LSE-ROOT*"
151 152

   "SLOG"
153 154 155 156 157 158 159 160 161 162 163 164 165 166 167

   "LSE-FILE-ERROR" "FILE-ERROR-FILE" "FILE-ERROR-RECORD-NUMBER"
   "FILE-ERROR-RECORD-ALREADY-EXISTS" "FILE-ERROR-FILE-DOES-NOT-EXIST"
   "FILE-ERROR-FILE-IS-INACCESSIBLE" "FILE-ERROR-FILE-ALREADY-EXISTS"
   "LSE-DATA-FILE-OPEN" "LSE-DATA-FILE-CLOSE" "LSE-DATA-FILE-OPEN-P"
   "READ-RECORD" "WRITE-RECORD" "DELETE-RECORD"
   "*MAX-RECORD-CHAINE-SIZE*"
   "*MAX-RECORD-TABLEAU-SIZE*"
   "*MAX-RECORD-VECTEUR-SIZE*"

   "INDEFINI" "INDEFINIP"
   "NOMBRE" "NOMBREP"
   "VECTEUR" "VECTEURP"
   "TABLEAU" "TABLEAUP"
   "CHAINE" "CHAINEP")
168

169
  (:documentation "The LSE language and system implementation."))
170

171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186
(defpackage "COM.INFORMATIMAGO.LSE.UNIX-TERMINAL"
  (:use "COMMON-LISP"
        "TRIVIAL-GRAY-STREAMS"
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.ASCII"
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.UTILITY"
        "COM.INFORMATIMAGO.COMMON-LISP.CESARUM.LIST"
        "COM.INFORMATIMAGO.RDP"
        "COM.INFORMATIMAGO.SIGNAL"
        "COM.INFORMATIMAGO.LSE.OS"
        "COM.INFORMATIMAGO.LSE")

  (:export "UNIX-TERMINAL"
           "TERMINAL-MODERN-MODE" "TERMINAL-CR-AS-XOFF"
           "TERMINAL-VINTR" "TERMINAL-VQUIT" "TERMINAL-VSUSP"
           "TERMINAL-VKILL" "TERMINAL-VEOF" "TERMINAL-VEOL"
           "TERMINAL-VEOL2" "TERMINAL-VERASE" "TERMINAL-VWERASE"
187
           "TERMINAL-VREPRINT" "TERMINAL-VSTART" "TERMINAL-VSTOP"))
188 189


190
;;; THE END ;;;;
191