Doh! Fixed. Thanks.
]]>Just about every Mac app does that. Well, looks like that, anyway — an .app is a bundle, but to the user it looks like a single file. If there was an easy way to build an .app bundle, that would be just as good, but there doesn’t seem to be. According to Bill Clementson, with OpenMCL, for example, “app bundles … need to be recompiled for every point update of Mac OS X. This effectively prevents distribution of finished apps”. Gong!
“And good luck delivering a Python […] application I can run on my Windows box without a raft of runtime infrastructure along with it.”
I’ve seen .exe’s built with py2exe that do just that. Way less painful than the typical Windows Installer mess.
Being unable to distribute a single .exe isn’t a showstopper, by itself. Syntax that looks funny to most programmers isn’t a showstopper, by itself. Being, ah, strongly encouraged to use a specific editor (though a great one at that!) isn’t a showstopper, by itself. But you start stacking 5 or 6 of these minor-nits together, and people start saying “You know, Lisp may be really awesome, but Python is 90% as great and won’t beat me up along the way”.
I love Lisp, but I fail to see how it helps anybody when people repeatedly ask for specific features and we repeatedly give them less-than-helpful answers. If the answer to “How do I make a single .exe?” was “You probably don’t want to, but here’s how to make a .msi installer…, and here’s how to make a Mac .app…”, that would be one thing — but it always seems to be “You probably don’t want to. *crickets*”.
]]>Thanks. From reading your entry and the comments (particularly yours) I don’t understand what you’re getting at: the example of a windows binary executable made from a lisp program (Edi’s Regex Coach) you immediately dismiss, although it seems to be exactly the sort of thing your wife could install and have a simple clickable icon on the desktop to run.
And good luck delivering a Python, Objective-C, Haskell, Chicken Scheme, Erlang, Perl, or PHP application I can run on my Windows box without a raft of runtime infrastructure along with it. And I’m afraid the same goes for C, C++ and C# apps - there is a reason people talk about DLL-hell. I guess if I’m running precisely the same vanilla Ubuntu install as you I might be able to run a perl, ruby or python shebang-script without alteration. But I wouldn’t count on it.
So - is there any lisp runtime that is as pervasive as, say, the GCC runtime? (But which version of GCC?) No. Would it be cool to have efficient tree-shakers for the ‘free’ lisps? Yes. But obviously Lisp has been used to distribute applications for decades, and continues to be so used. I really don’t think this is the showstopper you seem to think it is.
]]>