News for hackers. Stuff that matters.
Re:PHP vs. Lisp? by skolos on Monday September 22, 2008 @01:45PM (#311398)
Try this one: http://www.sergeykolos.com/cusp/intro/ Not everything you want, but at least an effort to make it close to your requirements.
Re:PHP vs. Lisp? by tjr on Monday September 22, 2008 @02:38PM (#311463)
Thank you for including the part about building an executable, and the little backstory on it.

When I first started in Lisp, one of my early questions too was, "how do you make an executable?" For a seasoned Lisper, that question might seem foreign, but it makes perfect sense to a C programmer.

I asked the question on Usenet, trying to explain that not everyone I wanted to give programs to had Lisp on their computer.

In response, someone tried to persuade me that you don't do such things with Lisp. Someone else turned out to be a Franz salesman asking, "which platforms are you talking about that don't have Lisp? we can supply Lisp on any platform!"

Re:PHP vs. Lisp? by gruseom on Monday September 22, 2008 @02:59PM (#311492)
someone tried to persuade me that you don't do such things with Lisp

This always puzzled me too. Admittedly it's less of an issue now that we can deploy programs over the web. But it's still kind of weird.

Here's my speculative answer. The classic Lisp programmer doesn't care that much about building software for end users. He's more interested in amusing himself and, occasionally, other Lisp programmers.

I don't mean to slam Lisp (which I love) or Lisp programmers (I am one). But I believe I have observed evidence of the above.

Re:PHP vs. Lisp? by schtog on Monday September 22, 2008 @03:42PM (#311549)
Just mentioning, Dr Scheme has a make-exe command in the menu. But that's the only way I know how to make an exe out of a lisp program. But then I have never looked for a way either.
Re:PHP vs. Lisp? by mixmax on Monday September 22, 2008 @03:37PM (#311540)
The classic Lisp programmer doesn't care that much about building software for end users. He's more interested in amusing himself and, occasionally, other Lisp programmers.

What a great quote !

Re:PHP vs. Lisp? by anamax on Monday September 22, 2008 @03:22PM (#311524)
If you were using a C compiler that produced executables that dynamically linked libc and other libraries, would you have any problems understanding that you can't run those executables on a machine that doesn't have the relevant libraries?

The lisp environment is basically the run-time library for lisp programs. In some cases, that run-time can be statically linked. In others, it can't.

You wouldn't find this confusing wrt C programs, so why is it a hard concept wrt Lisp programs?

Re:PHP vs. Lisp? by skolos on Monday September 22, 2008 @03:36PM (#311538)
I don't think anyone argues or don't understand this concept. The problem is: instead of answering the question: "How do I create executable?" people got lectured on why they shouldn't do that. I think it is much more productive for everyone just to give an answer and then, once you get the usual follow up question quickly explain why executable is big. This way lisp community might get more users.

But as it stands now all we hear is complaints that lisp community is bunch of jerks - the answers people get for this simple question is one of the reason why people think that the lisp community is not friendly.

Re:PHP vs. Lisp? by anamax on Monday September 22, 2008 @05:46PM (#311688)
> I don't think anyone argues or don't understand this concept.

The author of the original complaint clearly didn't. As he wrote: "I asked the question on Usenet, trying to explain that not everyone I wanted to give programs to had Lisp on their computer."

Lisp is the run-time for lisp "executables". Just as one can't run a C executable that depends on a dynamically loaded libc on a machine that doesn't have a dynamically loadable libc, one can't run a lisp executable without the relevant run-time.

This isn't an odd concept. Many windows programs depend on dlls.

Re:PHP vs. Lisp? by tjr on Monday September 22, 2008 @07:18PM (#311742)
You are correct in that I did not understand the matter when I first asked the question. However, the replies that I got did nothing to really answer it; it was just handwaving.

That was ten years ago. I understand Lisp systems quite a bit better now, but I maintain that it is a valid question. Why? You have made the point that C programs can be built to rely upon dynamic libraries, and indeed they can, and this is similar to Lisp programs relying upon the Lisp runtime.

However, C programs can also be built statically, and not have to rely upon additional libraries being present. This is not only possible, but fairly common, especially for simple programs.

If a Lisp novice is trying to build, say, "Hello World," and expects a static executable as a result, why is that so much to ask? In fact, it is a lot to ask of Lisp, but if you are new to Lisp, you are not likely to understand why.

I wouldn't expect a novice C programmer to write "Hello, World" such that it depends upon dynamic libraries; moreover, a novice ought to be able to stay busy learning C and writing ostensibly useful programs for quite a while without doing dynamic linking.

Unfortunately, it seems that too many Lisp novices don't get the answer that you have provided (which is quite a useful answer). Instead, their question is brushed off as irrelevant. At least this has been the case in the past; I could not say if anything has changed.

Re:PHP vs. Lisp? by anamax on Monday September 22, 2008 @07:46PM (#311783)
Huh? You said that you were a "C programmer" when you asked about running lisp executables.

When someone says "I'm a C programmer", as most folks asking about "lisp executables" on comp.lang.lisp do, I think that it's reasonable to assume that they've heard of and understand dynamic libraries.

Some lisps have static linking, some don't. I'm sorry that this was a show stopper for you.

Would an "install shield" builder, as is typically used for windows programs, have helped?

I don't suppose that you had the same reaction to Java, Python, Perl, awk, sed, tcl....

Re:PHP vs. Lisp? by skolos on Monday September 22, 2008 @08:45PM (#311842)
This post is proving my point: instead of answering simple questions being asked, lispers start lecturing and picking on other languages. You shouldn't know about static and dynamic linking, interpreters and compilers and other under the hood stuff to write simple lisp program (or even quite complex) and show it off to your friend without installing whole lisp implementation (maybe emacs with slime too?) on your friend's computer.

Why lispers are so elitist? Lisp is good not because it is the hardest language to learn, it is actually quite easy to pick up basic stuff, lisp is good because it is very powerful. Why make it harder for novices to try this language? This is not the way to develop the community.

Re:PHP vs. Lisp? by anamax on Tuesday September 23, 2008 @01:36AM (#312117)
Looking above, we see that you admitted that your question was answered. Lisp "executables" typically require run-times, just like "executables" in many other languages.

However, now the goal posts are moving.

The original question was how to deploy a lisp program. That typically requires the relevant run times, just as it does in every other language that uses dynamic linking and/or interpretation. (Emacs is not required to run lisp. Heck, it isn't even required to write it. Likewise, slime is a development convenience. If it's too much trouble, don't bother.)

I mentioned other languages to demonstrate that the problem is not lisp-specific.

To write a program in any language, someone has to install a compiler or interpreter and their dependencies. Folks who can't/won't do that themselves are stuck with whatever came with their system.

Again, this is not lisp-specific.

It would be nice if a reasonable lisp came pre-installed as part of linux distributions. But, like lots of other languages, it doesn't.

If you can't or won't install runtimes, there are lots of things that you can't deploy. (That's why I asked about an installation system to help automate this work.) If you can't or won't install a compiler and/or interpreter, there are lots of languages that you can't write.

Re:PHP vs. Lisp? by Tritis on Tuesday September 23, 2008 @10:49AM (#312409)
You still haven't answered the question. I read the thread and now you're off ranting about other languages needing runtimes blah blah blah.

How do I deploy a lisp application to an end user when all I know is his operating system?

Re:PHP vs. Lisp? by Retric on Wednesday September 24, 2008 @03:13PM (#313917)
Look he like most people said use a "LISP compiler".

If you don't know how to do that try to google "LISP compiler" Click first link "Free Common LISP Interpreters, Compilers and Development Systems ..."

For UNIX try "CMU Common Lisp Compiler" For Windows try "Ufasoft Lisp Studio"

LISP people don't try to hold your hand and point out every last step on the path but he gave you lot's of useful information if you are willing to spend a few seconds trying to understand what they said.

PS: As soon as you start complaining about not getting enough info they stop caring. But if you asked what a good LISP compiler for windows was they would probably answer your question.

Re:PHP vs. Lisp? by tjr on Monday September 22, 2008 @08:05PM (#311804)
When delivering an application to an end-user, hoops that the end-user has to jump through in order to run the application ought to be considered. The optimal route, in my opinion, is to deliver a totally self-contained application that doesn't require the user to install any runtime systems whatsoever.

In that light, yes, Java is suboptimal. However, installing the JRE is pretty straightforward for end-users. Many users even already have the JRE installed. Asking an end-user to install CLisp is a whole other kettle of fish.

Re:PHP vs. Lisp? by coffeeaddicted on Monday September 22, 2008 @11:37PM (#312008)
The Java-VM is mostly installed (and installable by-click otherwise) and Python has py2exe. I don't think many windows desktop application are written in the other languages you mentioned.

It's really sad, as lisp would probably also be great for desktop development. I mean it's not the problem of lisp - but it's unfortunately still a show-stopper for typical windows application developers.

Re:PHP vs. Lisp? by anamax on Tuesday September 23, 2008 @01:46AM (#312125)
Almost all windows applications are installed by running a specially built setup program. Often that program is itself a single exe, but not always. Occasionally there's a whole pile of files that the setup program moves to various locations.

This seems to be true regardless of the source language(s) of said application.

There are some nice tools to build said setup programs. That's why I asked whether they would be useful.

Re:PHP vs. Lisp? by Tritis on Tuesday September 23, 2008 @10:53AM (#312416)
You're hand waving again. Is there a solution for deploying a lisp application to a windows end user?

If I develop an application can a user download an exe which installs the requirements and have the application run after clicking an entry in the start menu?

Re:PHP vs. Lisp? by coffeeaddicted on Tuesday September 23, 2008 @11:27AM (#312450)
Yes, a tool that creates a simple to use setup for users, which allows those users to start lisp applications after an easy installation from the startmenu would be useful. Maybe that does even exist, I didn't see that so far, but it's been some time (about 3 years) since I last spend some time trying to do something like this.

I guess if it would for example install the clisp environment (if it's not installed already) and binds files with lisp extensions to it so they get executed on click that could be sufficient already. Do you know of a ready-to-use tool which does that already?

Re:PHP vs. Lisp? by gruseom on Monday September 22, 2008 @03:33PM (#311534)
I think you're agreeing with tjr. The concept isn't hard, it makes perfect sense. What's puzzling is why it's hard to get a simple answer when you ask how to do it - or rather why the question itself is frowned upon.