Skip to content

Commit 24a151a

Browse files
committed
Merge pull request #60 from jcbeaudoin/master
Port to MKCL
2 parents bf7a30e + bd48a3e commit 24a151a

File tree

4 files changed

+40
-0
lines changed

4 files changed

+40
-0
lines changed

impl-util.lisp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,8 @@
6666
".clisprc.lisp")
6767
(:implementation ecl
6868
".eclrc")
69+
(:implementation mkcl
70+
".mkclrc")
6971
(:implementation lispworks
7072
".lispworks")
7173
(:implementation sbcl
@@ -216,6 +218,11 @@ quicklisp at CL startup."
216218
#+ecl :resolve-symlinks #+ecl nil)
217219
(directory (merge-pathnames *wild-relative* directory)
218220
#+ecl :resolve-symlinks #+ecl nil)))
221+
(:implementation mkcl
222+
(setf directory (truename directory))
223+
(nconc
224+
(directory (merge-pathnames *wild-entry* directory))
225+
(directory (merge-pathnames *wild-relative* directory))))
219226
(:implementation sbcl
220227
(directory (merge-pathnames *wild-entry* directory)
221228
#+sbcl :resolve-symlinks #+sbcl nil)))
@@ -248,6 +255,8 @@ quicklisp at CL startup."
248255
(ql-scl:unix-rmdir (ql-scl:unix-namestring entry)))
249256
(:implementation ecl
250257
(ql-ecl:rmdir entry))
258+
(:implementation mkcl
259+
(ql-mkcl:rmdir entry))
251260
(:implementation lispworks
252261
(ql-lispworks:delete-directory entry))
253262
(:implementation sbcl

impl.lisp

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,24 @@
240240
#:socket-connect
241241
#:socket-make-stream))
242242

243+
;;; MKCL
244+
245+
(define-implementation-package :mkcl #:ql-mkcl
246+
(:documentation "ManKai Common Lisp - http://common-lisp.net/project/mkcl/")
247+
(:class mkcl)
248+
(:prep
249+
(require 'sockets))
250+
(:intern #:host-network-address)
251+
(:reexport-from #:si
252+
#:rmdir
253+
#:file-kind)
254+
(:reexport-from #:sb-bsd-sockets
255+
#:get-host-by-name
256+
#:host-ent-address
257+
#:inet-socket
258+
#:socket-connect
259+
#:socket-make-stream))
260+
243261

244262
;;; SBCL
245263

network.lisp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,18 @@
5353
:input t
5454
:output t
5555
:buffering :full)))
56+
(:implementation mkcl
57+
(let* ((endpoint (ql-mkcl:host-ent-address
58+
(ql-mkcl:get-host-by-name host)))
59+
(socket (make-instance 'ql-mkcl:inet-socket
60+
:protocol :tcp
61+
:type :stream)))
62+
(ql-mkcl:socket-connect socket endpoint port)
63+
(ql-mkcl:socket-make-stream socket
64+
:element-type '(unsigned-byte 8)
65+
:input t
66+
:output t
67+
:buffering :full)))
5668
(:implementation lispworks
5769
(ql-lispworks:open-tcp-stream host port
5870
:direction :io

package.lisp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
#:ecl
4949
#:gcl
5050
#:lispworks
51+
#:mkcl
5152
#:scl
5253
#:sbcl))
5354

0 commit comments

Comments
 (0)