Okay, so it's only about six months late but I have just uploaded a
CLISP version of Lispbox for Windows. If you've got a Windows box to
try it out on, please do download it from:
<http://www.gigamonkeys.com/lispbox/download.html>
and kick the tires. You can read a bit more about the Lispbox at:
<http://www.gigamonkeys.com/lispbox/lispbox.html>
As always send email to ····@gigamonkeys.com with any feedback or
questions you have.
Next up I'll try to build an Allegro-based Windows Lispbox. Then I may
get fancy and build a proper installer using NSIS. Then I hope to go
back and refresh all the Lispboxen with up-to-date versios of the Lisp
implementations and SLIME. I am planning to stop producing new
Lispboxen for OS X 10.3; if this bums you out too much you should drop
me a note--maybe I can work something out but I'd rather not have to.
-Peter
--
Peter Seibel * ·····@gigamonkeys.com
Gigamonkeys Consulting * http://www.gigamonkeys.com/
Practical Common Lisp * http://www.gigamonkeys.com/book/
On Thu, 25 Aug 2005 22:16:54 GMT, Peter Seibel <·····@gigamonkeys.com>
tried to confuse everyone with this message:
>
>Okay, so it's only about six months late but I have just uploaded a
>CLISP version of Lispbox for Windows. If you've got a Windows box to
>try it out on, please do download it from:
>
> <http://www.gigamonkeys.com/lispbox/download.html>
>
>and kick the tires. You can read a bit more about the Lispbox at:
>
> <http://www.gigamonkeys.com/lispbox/lispbox.html>
>
Cool. I was having problems with manually-installed SLIME before: it
wanted to access function "GetComputerNameExA" from kernel32.dll, and
the problem was that my kernel32.dll doesn't have that function
(strange, eh?). After aborting the error message everything worked
except I had to start slime-repl manually. The SLIME in Lispbox showed
the same behavior except it didn't work after restarting! Thankfully it
was easily fixable by replacing
#+win32
(ffi:def-call-out getpid (:name "GetCurrentProcessId")
(:library "kernel32.dll")
(:return-type ffi:uint32))
#+(or)
(let ((getpid (or (find-symbol "PROCESS-ID" :system)
;; old name prior to 2005-03-01, clisp <= 2.33.2
(find-symbol "PROGRAM-ID" :system)
#+win32 ; integrated into the above since 2005-02-24
(and (find-package :win32) ; optional modules/win32
(find-symbol "GetCurrentProcessId" :win32)))))
(defimplementation getpid () ; a required interface
(cond
(getpid (funcall getpid))
#+win32 ((ext:getenv "PID")) ; where does that come from?
(t -1))))
with
(defimplementation getpid ()
(OS:PROCESS-ID))
in swank-clisp.lisp as is pointed out in another thread. Now everything
works fine and I don't have to load asdf everytime I start emacs.
--
|a\o/r|,-------------.,---------- Timofei Shatrov aka Grue ------------.
| m"a ||FC AMKAR PERM|| mail: grue at mail.ru http://grue3.tripod.com |
| k || PWNZ J00 || Kingdom of Loathing: Grue3 lvl 18 Seal Clubber |
`-----'`-------------'`-------------------------------------------[4*72]
Timofei Shatrov <····@mail.ru> wrote the following to disable some code:
+---------------
| #+(or) (let (...) ...)
+---------------
May I strongly recommend that everyone always use #-(AND) instead of
#+(OR), and conversely use #+(AND) instead of #-(OR)? Yes, AND is
one character longer to type than OR, but with the AND flavor the sense
of the +/- "goes the right way": plus = on/enable, minus = off/disable.
Much less likely to cause mistakes.
Just a suggestion...
-Rob
p.s. IIRC, I first heard this recommendation & rationale from Erik Naggum.
-----
Rob Warnock <····@rpw3.org>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607
Rob Warnock wrote:
> Timofei Shatrov <····@mail.ru> wrote the following to disable some code:
> +---------------
> | #+(or) (let (...) ...)
> +---------------
>
> May I strongly recommend that everyone always use #-(AND) instead of
> #+(OR), and conversely use #+(AND) instead of #-(OR)? Yes, AND is
> one character longer to type than OR, but with the AND flavor the sense
> of the +/- "goes the right way": plus = on/enable, minus = off/disable.
> Much less likely to cause mistakes.
>
> Just a suggestion...
I find both approaches confusing. I'd prefer something like
http://srfi.schemers.org/srfi-62/srfi-62.html
Pascal
--
OOPSLA'05 tutorial on generic functions & the CLOS Metaobject Protocol
++++ see http://p-cos.net/oopsla05-tutorial.html for more details ++++
From: Edi Weitz
Subject: Re: Windows PCL Lispbox now available
Date:
Message-ID: <uacj3z9qk.fsf@agharta.de>
On Sat, 27 Aug 2005 04:55:00 -0500, ····@rpw3.org (Rob Warnock) wrote:
> p.s. IIRC, I first heard this recommendation & rationale from Erik
> Naggum.
Based on an idea from Paul Dietz:
<http://groups.google.com/group/comp.lang.lisp/msg/00a479f66b418600>
Cheers,
Edi.
--
Lisp is not dead, it just smells funny.
Real email: (replace (subseq ·········@agharta.de" 5) "edi")
Edi Weitz <········@agharta.de> wrote:
+---------------
| ····@rpw3.org (Rob Warnock) wrote:
| > p.s. IIRC, I first heard this recommendation & rationale from Erik
| > Naggum.
|
| Based on an idea from Paul Dietz:
| <http://groups.google.com/group/comp.lang.lisp/msg/00a479f66b418600>
+---------------
Actually, looking again at the whole thread, I believe Thomas Russ
was also one of the first to mention using "empty forms in OR or AND":
<http://groups.google.com/group/comp.lang.lisp/msg/54c7cd87edd42947>
In any case, I came away with a strong feeling that #+(AND) and #-(AND)
for "enable" and "disable", resp., were far & away the best of the all
of the alternatives discussed: portable [pure CLHS], "natural" with
respect to "+/-", and easily remembered.
I've been using them ever since... ;-} ;-}
-Rob
-----
Rob Warnock <····@rpw3.org>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607
····@rpw3.org (Rob Warnock) writes:
> Timofei Shatrov <····@mail.ru> wrote the following to disable some code:
> +---------------
> | #+(or) (let (...) ...)
> +---------------
>
> May I strongly recommend that everyone always use #-(AND) instead of
> #+(OR), and conversely use #+(AND) instead of #-(OR)? Yes, AND is
> one character longer to type than OR, but with the AND flavor the sense
> of the +/- "goes the right way": plus = on/enable, minus = off/disable.
> Much less likely to cause mistakes.
#+(or) comes from #+NIL
Note that it would be useless to write #-(or) or #+(and).
We're taking (or) for false and (and) for true.
#-(and) is like (not true)
#+(or) is like false
which is clearer?
--
__Pascal Bourguignon__ http://www.informatimago.com/
The rule for today:
Touch my tail, I shred your hand.
New rule tomorrow.
Pascal Bourguignon <····@mouse-potato.com> wrote:
+---------------
| ····@rpw3.org (Rob Warnock) writes:
| > May I strongly recommend that everyone always use #-(AND) instead of
| > #+(OR), and conversely use #+(AND) instead of #-(OR)? Yes, AND is
| > one character longer to type than OR, but with the AND flavor the sense
| > of the +/- "goes the right way": plus = on/enable, minus = off/disable.
| > Much less likely to cause mistakes.
|
| #+(or) comes from #+NIL
+---------------
Consider what will happen if NIL is on the *FEATURES* list, eh?
Those two forms will be different in that case.
+---------------
| Note that it would be useless to write #-(or) or #+(and).
+---------------
Why "useless"?!? Both signal the inclusion of the following form,
which you might have disabled earlier while testing some alternative.
If you use #+(and) for the one(s) that are currently enabled and
#-(and) for the one(s) that are currently disabled, then you can
turn a form "on" or "off" simply by changing a "+" to "-" or
vice-versa, e.g.:
(defun foo ()
;;XXX Only enable one of the following at a time:
#-(and) (bar baz 42)
#+(and) (gorp baz 42) ; <== this one is enabled
#-(and) (quux (1+ baz) 53)
)
+---------------
| We're taking (or) for false and (and) for true.
| #-(and) is like (not true)
| #+(or) is like false
| which is clearer?
+---------------
You misunderstand me. I'm suggesting to NEVER use #+(or) or #-(or)
because their meanings are "backwards" from the + and - signs they
contain [e.g., turning something "off" with a "+" is confusing].
Rather, I am suggesting to always use one of these:
#+(and) "+" == "on" == "true" == "include the following s-expr"
#-(and) "-" == "off" == "false" == "ignore the following s-expr"
-Rob
-----
Rob Warnock <····@rpw3.org>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607
Pascal Bourguignon <····@mouse-potato.com> writes:
> ····@rpw3.org (Rob Warnock) writes:
>
> > Timofei Shatrov <····@mail.ru> wrote the following to disable some code:
> > +---------------
> > | #+(or) (let (...) ...)
> > +---------------
> >
> > May I strongly recommend that everyone always use #-(AND) instead of
> > #+(OR), and conversely use #+(AND) instead of #-(OR)? Yes, AND is
> > one character longer to type than OR, but with the AND flavor the sense
> > of the +/- "goes the right way": plus = on/enable, minus = off/disable.
> > Much less likely to cause mistakes.
>
> #+(or) comes from #+NIL
>
> Note that it would be useless to write #-(or) or #+(and).
>
> We're taking (or) for false and (and) for true.
> #-(and) is like (not true)
> #+(or) is like false
> which is clearer?
I agree with Rob here. #+(and) and #-(and) are a kind of happy
accident where they seem naturally to imply what you want to do.
#+(and) means, yes, include the following form. #-(and) says no,
don't include the following form.
OTOH either alternative (i.e. using and or or) is better than thinking
up new names of things that aren't on the *features* list for
commenting out code.
--
Fred Gilham ······@csl.sri.com
Ah, the 20th century, when the flight from reason crash-landed into
the slaughterhouse. --- James Ostrowski
Peter Seibel schrieb:
> Okay, so it's only about six months late but I have just uploaded a
> CLISP version of Lispbox for Windows. If you've got a Windows box to
> try it out on, please do download it from:
Thank you very much. I go through some cheat-rooms to hold the
lisp-banner up. Now you gave me a nice link for all that click-users in
a window ;)
stefan
lin8080 <·······@freenet.de> writes:
> Peter Seibel schrieb:
>
>> Okay, so it's only about six months late but I have just uploaded a
>> CLISP version of Lispbox for Windows. If you've got a Windows box to
>> try it out on, please do download it from:
>
> Thank you very much. I go through some cheat-rooms to hold the
> lisp-banner up. Now you gave me a nice link for all that click-users in
> a window ;)
Oh, BTW, I forgot to mention that the way to run the Windows Lispbox
is to set LISPBOX_HOME to the full name of the directory you get when
you unpack the zip and then running lispbox.bat. Or you can add the
'set LISPBOX_HOME=...' line to lispbox.bat. If I ever get around to
building a proper installer I'll try to automate this step
-Peter
--
Peter Seibel * ·····@gigamonkeys.com
Gigamonkeys Consulting * http://www.gigamonkeys.com/
Practical Common Lisp * http://www.gigamonkeys.com/book/
Peter Seibel wrote:
> If I ever get around to
> building a proper installer I'll try to automate this step
Inno Setup is a nice free installer builder:
http://www.jrsoftware.org/isinfo.php
--
Frank Bu�, ··@frank-buss.de
http://www.frank-buss.de, http://www.it4-systems.de