TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Creating a Lisp Executable

73 pointsby alrex021over 14 years ago

6 comments

zachbeaneover 14 years ago
I wrote Buildapp for SBCL to make this a little easier and command-liney. I use it all the time.<p><a href="http://xach.com/lisp/buildapp/" rel="nofollow">http://xach.com/lisp/buildapp/</a>
评论 #1899816 未加载
JeanPierreover 14 years ago
For CLisp on Windows, one should also put the DLL-files from Base/Full within same directory. For base-users, this means libiconv-2.dll, libintl-8.dll and readline5.dll. For Full, this means zlib1.dll (if you're using it), pcre.dll and svm.dll. Windows usually complain about not finding these, so for portability you should keep them there.
astineover 14 years ago
Yes, this is the thing that probably most annoys people coming from languages like C about Lisp. Producing a standalone executable is non-obvious, and different from implementation to implementation. Commercial implementations make this simple, but generally, folks learning the language aren't using commercial implementations. It's funny though when you realize that it's not any harder than Java or a scripting language.
评论 #1900911 未加载
jmattover 14 years ago
In clojure/lein[1][2] it's simple enough though not really equivalent to a real executable:<p><pre><code> lein uberjar </code></pre> That'll create a standalone jar. But, of course, the computer will need some sort of JRE.<p>This definitely reminds me of creating executables in python. Even though python really isn't a lisp it has seemingly crazy, difficult and under-developed and underutilized ways to create executables.. somewhat surprising considering how popular it is today[3].<p>[1] See <a href="http://clojure.org/" rel="nofollow">http://clojure.org/</a><p>[2] See <a href="https://github.com/technomancy/leiningen" rel="nofollow">https://github.com/technomancy/leiningen</a><p>[3] Long list ... all have pluses and minuses <a href="http://www.py2exe.org/" rel="nofollow">http://www.py2exe.org/</a> <a href="http://pypi.python.org/pypi/py2app/" rel="nofollow">http://pypi.python.org/pypi/py2app/</a> <a href="http://www.pyinstaller.org/" rel="nofollow">http://www.pyinstaller.org/</a> <a href="http://pypi.python.org/pypi/bbfreeze/0.97.2" rel="nofollow">http://pypi.python.org/pypi/bbfreeze/0.97.2</a> <a href="http://cx-freeze.sourceforge.net/" rel="nofollow">http://cx-freeze.sourceforge.net/</a>
评论 #1899950 未加载
jcwover 14 years ago
The one thing that's made me apprehensive of using CL for a project.
评论 #1899750 未加载
aberkowitzover 14 years ago
Interpreted programming languages (especially ones with a REPL) are great for their low barrier of entry. However, once someone wants to make an easily distributable executable, they have to jump through numerous hoops.<p>The only exception to this problem are VMs which are often clunky and restricted to code precompiled for a specific version of a VM. I would like to see more solutions to this dilema, examples of which can be seen in py2exe and pyinstaller, for Python.<p>Edit: This is a general thought, and not a dig against Lisp. It is made clear by Stack Overflow answers that many implementations of Lisp have easy ways to make executables which are well documented.
评论 #1899504 未加载
评论 #1899426 未加载
评论 #1899471 未加载
评论 #1900702 未加载