Windows Common LISP - lisp
This is a discussion on Windows Common LISP - lisp ; On Nov 10, 3:10 am, jvdvyah <benkooij...@gmail.com> wrote:
> Hi all,
>
> At the risk of inviting ridicule, I have a proposal and am looking for
> feedback, suggestions, tips and pointers that can help me out.
>
> I've ...
-
Re: Windows Common LISP
On Nov 10, 3:10 am, jvdvyah <benkooij...@gmail.com> wrote:
> Hi all,
>
> At the risk of inviting ridicule, I have a proposal and am looking for
> feedback, suggestions, tips and pointers that can help me out.
>
> I've been a LISP-lurker for a while now, attempting to learn LISP and
> keeping an eye on what's going on everywhere. Windows is my platform
> of choice (for various reasons) and I've found that Windows is a tad,
> um, underserved when it comes to Common LISP and somewhat newbie-
> unfriendly (it's a little better for Scheme but I'm not interested -
> much - in Scheme just yet).
>
> After playing with various implementations, IDEs, libraries, etc. on
> Windows (or rather, trying to play with them), it's all rather grim.
> ASDF-INSTALL is not Windows-friendly (who was it that said that Common
> LISP didn't have to rely on external utilities? Hah!), various major
> libraries don't run on Windows are or a nightmare to get working
> (MCCLIM anyone? Yes, I know it's been done but documentation is, well,
> fragmented), some major implementations have only partial Windows
> support (SBCL? Yes, I know they're working on it: kudos to those brave
> fellows/gals).
>
> In short, for just about any problem you encounter on Windows, there
> *is* a solution of some sort, but finding that solution and then
> getting it to work, in most cases, is a challenge at least. I think
> this explains the newbie-fright-syndrom that pops up so often.
>
> I've looked at various attempts to resolve some of this (Gardeners',
> LispBuilder, etc.) but I think all of these are slow in getting
> established because it's just too big a challenge: they all try to do
> all three major platforms at once (Mac, Linux, Windows). Although I
> admire the intent, and some of the things already achieved are very
> impressive, I don't think it's practical to try to do this (yet).
>
> Rather than bombard communities like these with a zillion questions to
> solve individual problems, I thought I'd get of my behind and try to
> help improve the situation, following examples of some of the leading
> lights here.
>
> So, I propose the following: that I put together a turn-key Common
> LISP installation package that includes most of what the average
> newbie would want. Below is a list of my current ideas for that and
> I'm looking for feedback, suggestions, pointers to things that may be
> of use, etc. I will try and do most of the actual work involved in it
> (installer, configuration, patches, testing, hosting, etc.) but no
> doubt I'll have to ask some of you for help at a few points (I'm far,
> far, from being LISP-fluent).
>
> Note: most of this idea borrowed from Peter's LispBox, naturally. Note
> that this may grow to be a very large download so I'd need to look at
> pulling in things during install on-demand instead as well.
>
> I imagine multiple packages or a single packages but with choices (the
> former is probably easier to build, the latter easier to maintain once
> built: TBD). The main point is to avoid newbies having to go hunt for
> packages/downloads to get simple things done (simple as in what *they*
> are used to being simple: putting up "Hello, world" in a dialog box
> should be a no-brainer (and bundled as working example)). Same for
> networking (usockets?), multi-threading (need that for proper GUI work
> anyway), database access, etc.
>
> CONTENTS:
> One or more IDEs or IDE of choice (at least GNU/X/W32-Emacs, with
> optionally easily-activated VImpulse thrown in for VI die-hards;
> others may be ABLE, Eclipse+Cusp, etc.)
>
> One or more Common LISP implementations:
> CLISP - for the size-sensitive
> SBCL - for the speed-freaks; may need to contribute to Win32 port to
> make this happen
> ECL - for the C/C++ lovers
> Lispworks Personal Edition - coz' it's good
> Allegro Express Edition - ditto
> Corman Common LISP - well, it's the only Windows-only
> implementation; can hardly leave that out, now, can i?
>
> A set of (optional) packages (idea borrowed from Edi's StarterPack).
> General requirements: must work on Windows (but I'd be willing to
> contribute patches to make that happen for important ones), must be
> easily installable (which means handling dependencies), should be
> downloaded on-demand (preferably pulling them from Cliki or home site
> etc. on demand, so may need to hack ADSF-INSTALL for Windows or use
> CLBUILD or ask Edi how he did it, etc.).
>
> A GUI built-in/ready-to-go. I'd prefer it to be something like Cells-
> gtk, which provides two good things in one but it's a hairy beast to
> get up and running (esp. on Windows). Alternatives: MCLIM+GTK, MCCLIM
> +Graphics-forms, LTK, RNDZL with pre-built GUI examples, wxCL (yes, I
> know it's dead), etc. Will need to figure out how to bundle the
> servers for these if need be.
>
> Other packages: regular expressions, rational (for the current times)
> path/filename abstraction, networking, database access, containers,
> series, utilities, Qi, CLOCC, etc. Main requirements is that they
> should be complete (i.e. not half-finished) *or* stable and still
> being maintained.
>
> CONFIGURATION
> Everything should work out-of-the-box, meaning that after installation
> (and the choices the user made during that), starting up the IDE
> should be a double-click affair, packages should be pre-loaded or
> hints should be provided on how to load them (e.g. could be menu in
> the IDE).
>
> There should be ready-to-run examples that demonstrate just about
> every basic facility and package. Examples must be discoverable
> (another menu?).
>
> There should be an easy way to deploy a program: this requires careful
> balancing of the whole program-as-you-go/image/core model with the
> build-an-executable-and-send-it-out model: both should be obvious,
> supported, explained and demonstrated.
>
> Some sort of tutorial should be bundled (maybe Peter's book, or Lisp
> In Spells or something: copyright issues here, so must get appropriate
> permissions). Hyperspec (CLtL?) bundled and integrated.
>
> Anyway, that's about it. I'm sure I've forgotten a lot (tell me!) and
> I'm over-reaching (will probably need to trim some of this down so I
> my addled brain can handle all of it). This is not something I'm
> aiming to have up-and-running in a few weeks; this will take some
> time. I think it may be best to start with a single IDE, single
> implementation, with GUI and multi-threading and some other minor
> packages, examples and tutorial pre-installed; that will already be a
> major step.
>
> Some reality-check questions:
>
> Is this is good idea or should I instead direct my efforts to helping
> some of the other somewhat similar initiatives? If so, which one(s)?
>
> Are there any download stats for Lisp-in-a-Box, Peter's LispBox, Edi's
> Starterpack, etc. Are these things popular?
>
> As said, I'll probably need to trim it down a bit. What do you think I
> should drop?
>
> Is this better as a Gardeners project? If so, why? If not, why not?
>
> Anybody willing to help?
>
> Any and all feedback welcome (especially if you think I'm crazy to
> even try it).
>
> Ben.
YES PLEASE!
I am a Lisp noob, working on Windows. I am your intended audience. And
I sorely want what you describe. And if you're able make it while
staying away from emacs, I will give you my first born.
Others have asked questions why this would be desirable. I'll try to
answer from my perspective.
Q: Why wouldn't Windows users just run a commercial version?
A: Same reasons non-windows-users don't run a commercial version. I'm
a piss-poor student. I won't pay for a Lisp I'm not going to be using
commercially, and odds are I won't be using it commercially before
I've learned the language. And any free trial version I've seen has
been crippled in a way that makes it unusable for me. Yes, I will use
more heap than that limit (in fact I have, in my ~4 months of Lisp).
Q: Why not emacs?
A: I don't want to start a flame war. However, emacs' apparent
popularity is a mystery to me. I take it it's supposed to be text
editor. My minimum expectations for text-editor is for it to have ctrl-
c/ctrl-v and a proper undo function. Emacs has neither. I can
configure it for cut and paste, but I think I'm stuck with its undo
function. I could go on. I get that emacs can be configured to work
right, but I don't want to configure it. Any text-area widget from a
GUI toolkit already meets these requirements. When I have to configure
something to do ctrl-c/ctrl-v, that just screams "Fuck you windows
user", to me. I can imagine that that is on purpose.
Q: Why not LispBox and Able?
A: LispBox gave me a set up that allowed me to write and evaluate Lisp
code, and I don't know what I'd do without it. Still, I was stuck with
emacs. It also seems to be a stack of lots of different software that
no one fully understands. See my thread on printing unicode.
A: Able looks like it's great, but it crashes as soon as I load it.
Q: But Windows users hate our freedom and like to kill kittens!
A: Most don't. I run Debian on my server, and have even sold macs. For
my personal computer I prefer windows, for many reasons I wont get
into.
From what I can tell after a some months of using it, Common Lisp is
fantastic language. Languages like Python and Ruby are really popular
these days; Lisp has all their features plus 50 times the speed. I see
no reason why Lisp couldn't be huge, if getting just started with it
was a little easier.
As for the general direction of your project, I think you may be
making a mistake in trying to do to much. Like being compatible with
many implementations of Lisp. If the solution is supposed to "just
work", I think it would be better to choose a single Common Lisp
implementation and make it work flawlessly, choose one GUI toolkit,
one IDE etc. Whatever you do I wish you the best of luck, because this
is a something I think many people want, and it may be huge for the
popularity of Lisp.
-
Re: Windows Common LISP
philip.armitage@gmail.com wrote:
> On Nov 10, 2:10 am, jvdvyah <benkooij...@gmail.com> wrote:
>
>> Any and all feedback welcome (especially if you think I'm crazy to
>> even try it).
>
> Not really directly answering your question, but I plan for the next
> release of ABLE to make it more of a complete starter pack style
> install. So you would get a Lisp, an IDE, GUI, ASDF and a set of
> common (working!) libraries with instructions for how to extend it
> with other libraries. Although people think they want a single click
> exe and that's what I eventually caved in to pressure and provided,
> this way will make more sense, very much along the lines you have
> suggested (and along the lines of Lispbox.
>
> I certainly think alternatives are good though and concentrating on
> the Emacs/Slime side would make sense as many people want that based
> on years that they've invested in Emacs before looking at Common Lisp.
> I'm not sure how up to date Lispbox is but maybe it's a good place to
> start?
>
That would be awesome! Although I'm heavily investing my time in EMacs,
and I'm having great fun (too much Ctrl+C and Ctrl+X sometimes)...
But It's still a good idea to have a more common editor (common in this
case is strictly subjective - based on my experience) that most people
would be used to.
Thanks, Phil!
-
Re: Windows Common LISP
On Nov 10, 7:11 pm, jenspetter...@gmail.com wrote:
> Q: Why not LispBox and Able?
> [...]
> A: Able looks like it's great, but it crashes as soon as I load it.
If you send me an email I can try and help you resolve the problem. I
can't promise anything but there are dozens of ABLE users on Windows.
Unfortunately the Windows version does suffer the most with
reliability issues which often relate to the use of Tcl/Tk for the
GUI. I once exchanged several emails with a Windows user who was
having trouble and we eventually tracked it down to a system tray icon
loaded by his ISP connection software. Apparently things like this are
quite common with Tcl/Tk on Windows for some reason...
I may have also jumped the gun using SBCL on Windows for the 0.15
release but quite a few people asked for it over CLISP so I took the
chance with it. Possibly you're hitting some issue there.
I also think that if I switch from compiled exe's to a bundle it will
be far easier to diagnose crashes as you can see output in a console
window.
--
Phil
http://phil.nullable.eu/
-
Re: Windows Common LISP
On Nov 10, 9:01 pm, philip.armit...@gmail.com wrote:
> On Nov 10, 7:11 pm, jenspetter...@gmail.com wrote:
>
> > Q: Why not LispBox and Able?
> > [...]
> > A: Able looks like it's great, but it crashes as soon as I load it.
>
> If you send me an email I can try and help you resolve the problem. I
> can't promise anything but there are dozens of ABLE users on Windows.
> Unfortunately the Windows version does suffer the most with
> reliability issues which often relate to the use of Tcl/Tk for the
> GUI. I once exchanged several emails with a Windows user who was
> having trouble and we eventually tracked it down to a system tray icon
> loaded by his ISP connection software. Apparently things like this are
> quite common with Tcl/Tk on Windows for some reason...
>
> I may have also jumped the gun using SBCL on Windows for the 0.15
> release but quite a few people asked for it over CLISP so I took the
> chance with it. Possibly you're hitting some issue there.
>
> I also think that if I switch from compiled exe's to a bundle it will
> be far easier to diagnose crashes as you can see output in a console
> window.
>
> --
> Philhttp://phil.nullable.eu/
Will do
-
Re: Windows Common LISP
On Nov 10, 11:11 am, jenspetter...@gmail.com wrote:
> Q: Why not emacs?
> A: I don't want to start a flame war. However, emacs' apparent
> popularity is a mystery to me. I take it it's supposed to be text
> editor. My minimum expectations for text-editor is for it to have ctrl-
> c/ctrl-v and a proper undo function. Emacs has neither. I can
> configure it for cut and paste, but I think I'm stuck with its undo
> function. I could go on. I get that emacs can be configured to work
> right, but I don't want to configure it. Any text-area widget from a
> GUI toolkit already meets these requirements. When I have to configure
> something to do ctrl-c/ctrl-v, that just screams "Fuck you windows
> user", to me. I can imagine that that is on purpose.
I agree that we should have a well-developed Lisp IDE other than
Emacs, for people who are coming to Lisp from other commonly-used
IDEs. Newcomers already have to get used to Lisp syntax, which we
can't and wouldn't change; there's no point in putting yet another
barrier in their way by forcing them to learn Emacs.
That said, you should understand why Emacs is the way it is: not to
fuck over Windows users, but simply because it is older than the C-c/C-
v convention you refer to. Emacs dates back to 1976, while this
convention was introduced, AFAIK, by the first Macintosh in 1984.
-- Scott
-
Re: Windows Common LISP
In article
<79383ddf-bb5f-48f6-a1e5-ba0b2c049dfc@v39g2000pro.googlegroups.com>,
Scott Burson <FSet.SLB@gmail.com> wrote:
> On Nov 10, 11:11 am, jenspetter...@gmail.com wrote:
> > Q: Why not emacs?
> > A: I don't want to start a flame war. However, emacs' apparent
> > popularity is a mystery to me. I take it it's supposed to be text
> > editor. My minimum expectations for text-editor is for it to have ctrl-
> > c/ctrl-v and a proper undo function. Emacs has neither. I can
> > configure it for cut and paste, but I think I'm stuck with its undo
> > function. I could go on. I get that emacs can be configured to work
> > right, but I don't want to configure it. Any text-area widget from a
> > GUI toolkit already meets these requirements. When I have to configure
> > something to do ctrl-c/ctrl-v, that just screams "Fuck you windows
> > user", to me. I can imagine that that is on purpose.
>
> I agree that we should have a well-developed Lisp IDE other than
> Emacs, for people who are coming to Lisp from other commonly-used
> IDEs. Newcomers already have to get used to Lisp syntax, which we
> can't and wouldn't change; there's no point in putting yet another
> barrier in their way by forcing them to learn Emacs.
>
> That said, you should understand why Emacs is the way it is: not to
> fuck over Windows users, but simply because it is older than the C-c/C-
> v convention you refer to. Emacs dates back to 1976, while this
> convention was introduced, AFAIK, by the first Macintosh in 1984.
>
> -- Scott
I'm not an Windows+Emacs user, but it should be possible to use
Emacs with some more Windows-like key bindings.
On the Mac there is a variant of GNU Emacs called Aquamacs
which tries to adapt to Apple conventions. command-x/c/v
there works as expected. One can use Emacs/Slime and
have some Mac adoption via Aquamacs. Isn't there anything
like that on Windows?
But I agree, I personally am also not a fan of an Emacs based IDE.
The commercial Lisp IDEs (Allegro CL, LispWorks, Corman CL (?))
should be usable without Emacs-knowhow. LispWorks for
example has Preferences for the editor to set the emulation.
Allegro CL has that, too, IIRC.
There are some alternatives. Like using Eclipse and a Lisp plugin, ...
But - I haven't seen a single free (!) good integrated
development environment for Lisp on Windows and Mac OS X
for quite some time (besides MCL for PowerPC Macs).
One that does not look clumsy and is written in Lisp.
The Clozure CL guys are looking for sponsoring for improving
their Mac IDE:
http://article.gmane.org/gmane.lisp.openmcl.devel/2972/
Since Clozure CL is currently being ported
to Windows, maybe there is some interest to base an IDE
on top of it? I guess it would take some time to
get it into a usable state, but what is another year? ;-)
For LispWorks, the special 50% offer still runs for a few
days: http://www.lispworks.com/buy/50-50-special-offer.html
Students wanting to use Allegro CL should check with
the conditions the university has. For example years
ago we had a site license here at the University of Hamburg
that allowed everyone with access to the SUN cluster
to use Allegro CL (and CLIM). Don't know what the state of that is
now.
I'm not sure how popular site licenses are currently
at universities, but sometimes LispWorks and Allegro CL
are available to students via special University licenses.
--
http://lispm.dyndns.org/
-
Re: Windows Common LISP
On Nov 10, 10:09 pm, Rainer Joswig <jos...@lisp.de> wrote:
> I'm not an Windows+Emacs user, but it should be possible to use
> Emacs with some more Windows-like key bindings.
>
> On the Mac there is a variant of GNU Emacs called Aquamacs
> which tries to adapt to Apple conventions. command-x/c/v
> there works as expected. One can use Emacs/Slime and
> have some Mac adoption via Aquamacs. Isn't there anything
> like that on Windows?
Thanks for the ideas, Rainer. To pre-empt answers: yes there are plug-
ins/versions of GNU EMacs to make it more palatable to Windows users
(there's EmacsW32, EasyMacs, etc.). It's something I'll definitely be
looking into.
The main problem with solutions like these it that they tend to cause
impedance between Emacs and SLIME key-bindings (with Emacs now
behaving as Windows and SLIME as Emacs :-)). We could also change
SLIME key-bindings as well of course, but that will render many
tutorials awkward to follow.
Anyway, something to think about...
-
Re: Windows Common LISP
In article
<b9ba9562-8cc8-44e8-aacb-3f6554e4fd3c@i24g2000prf.googlegroups.com>,
jvdvyah <benkooijman@gmail.com> wrote:
> On Nov 10, 10:09 pm, Rainer Joswig <jos...@lisp.de> wrote:
> > I'm not an Windows+Emacs user, but it should be possible to use
> > Emacs with some more Windows-like key bindings.
> >
> > On the Mac there is a variant of GNU Emacs called Aquamacs
> > which tries to adapt to Apple conventions. command-x/c/v
> > there works as expected. One can use Emacs/Slime and
> > have some Mac adoption via Aquamacs. Isn't there anything
> > like that on Windows?
>
> Thanks for the ideas, Rainer. To pre-empt answers: yes there are plug-
> ins/versions of GNU EMacs to make it more palatable to Windows users
> (there's EmacsW32, EasyMacs, etc.). It's something I'll definitely be
> looking into.
>
> The main problem with solutions like these it that they tend to cause
> impedance between Emacs and SLIME key-bindings (with Emacs now
> behaving as Windows and SLIME as Emacs :-)). We could also change
> SLIME key-bindings as well of course, but that will render many
> tutorials awkward to follow.
>
> Anyway, something to think about...
my recipe:
a) find out what the currently 'best' key bindings for
windows users are.
b) check if some SLIME users use those and have changed
the SLIME key bindings to work better under Emacs/Windows
(typically via the SLIME mailing list)
c) if necessary change/extend the key bindings and publish those
Also note that with Emacs many commands can also be reached
via menus.
It would actually be helpful if the SLIME developers also
would make a release from time to time. RELEASE means
a stable piece of software that is known to work on
the supported platforms and is somehow in sync with its
documentation. This would mean that the
software would need to be tested (manually and automated)
before a release. The minimum would be tags on the
source repository so that 'stable' software can be identified.
--
http://lispm.dyndns.org/
-
Re: Windows Common LISP
On Nov 10, 5:10 am, jvdvyah <benkooij...@gmail.com> wrote:
> After playing with various implementations, IDEs, libraries, etc. on
> Windows (or rather, trying to play with them), it's all rather grim.
> ASDF-INSTALL is not Windows-friendly (who was it that said that Common
Try Eclipse + CUPS + SBCL (bundled with CUPS or separate) for a quick
start.
-
Re: Windows Common LISP
Does anybody know of an out-of-box distribution of MCCLIM for windows?
Something I could just start playing with after a five minutes
installation process?
Am I asking too much?
Pedro