This package provides a platform-independent interface to various
features absent from the
ANSI Common Lisp
standard, such as sockets, shell, Gray streams etc. The
implementation-specific things, like loads of #+/#-
, are
hidden from the user.
You can download this package from the following HTTP mirrors:
To use this package, you will need an ANSI Common Lisp.
PORT
is now a part of CLOCC
(in
src/port
),
and, as such, is accessible via anonymous CVS and FTP, as explained on
the CLOCC
homepage.
PORT
uses
mk:defsystem
,
which is a part of CLOCC
too.
This Common Lisp sources include the following files (in the alphabetical order):
file | description |
---|---|
ext.lisp |
miscellaneous minor extensions, used everywhere |
gray.lisp |
David N. Gray's STREAM-DEFINITION-BY-USER:GENERIC-FUNCTIONS unification |
mop.lisp |
Meta-Object Protocol |
net.lisp |
sockets, socket servers, host name resolution etc |
path.lisp |
Pathnames and Filenames |
proc.lisp |
LispM-style portable multiprocessing |
shell.lisp |
shell access, pipes |
sys.lisp |
getenv , arglist ,
class-slot-list , chdir , etc |
This package is distributed under the GNU LGPL.
To use the library, type "make system"
, which should
compile all the files. Alternatively, you can issue the
(mk:compile-system "port")
command yourself.
Then you can dump your images.
See also the general CLOCC
INSTALL
instructions.
Please note that this package exports symbols with names which might be already present as an extension in your Common Lisp implementation. I recommend issuing the following command before using this package:
#+allegro (shadowing-import '(port::gc port::arglist port::chdir)) #+clisp (shadowing-import '(port::getenv port::arglist port::gc port::finalize port::sysinfo port::with-gensyms port::probe-directory port::current-time port::quit port::default-directory port::resolve-host-ipaddr port::hostent port::hostent-name port::hostent-aliases port::hostent-addr-list port::socket-server port::socket-accept port::socket-server-close port::socket-service-port)) #+cmu (shadowing-import '(port::quit port::default-directory port::gc port::process-wait port::finalize))
Comments and bug reports are welcome.
Sam Steingold <sds@gnu.org> |