在CommonLisp中,有没有一种方法可以将列表的值分配给符号列表,类似于在Python中将元组的值分配给变量的方式?x,y,z=(1,2,3)有点像(setq'(np)'(12))其中n和p现在分别等于1和2。以上只是我在脑海中思考的方式,但它不起作用。我尝试按如下方式使用应用:(applysetq'('(np)'(12)))我是Lisp的新手,所以如果这是显而易见的事情,尽量不要太苛刻,请给我指明正确的方向!谢谢。PS:我看过关于在Scheme中执行此操作的帖子和类似的关于CommonLisp中的元组扩展的帖子,但这些对回答我的问题不是很有帮助1)因为我没有使用Scheme,以及
为什么具有所有动态特性的Lisp可以静态编译,而Python不能(在不丢失其所有动态特性的情况下)? 最佳答案 没有什么可以阻止Python的静态编译。它的效率有点低,因为Python揭示了更多可变的本地范围,而且,要保留一些动态属性(例如eval),您需要将编译器包含在已编译的程序中,但也没有什么可以阻止的。也就是说,研究表明,大多数Python程序虽然在静态分析下是动态的,但在运行时却是相当静态和单态的。这意味着运行时JIT编译方法在Python程序上工作得更好。请参阅unladen-swallow、PyPy、Psyco,了解将
在Python中,假设定义了以下函数:deffunction(a,b,c):...dostuffwitha,b,c...我可以通过Python的序列解包来使用该函数:arguments=(1,2,3)function(*arguments)CommonLisp中是否存在类似的功能?所以如果我有一个函数:(defunfunction(abc)...dostuffwitha,b,c...如果我有一个包含3个元素的列表,我可以轻松地将这3个元素用作函数的参数吗?我目前的实现方式是这样的:(destructuring-bind(abc)(123)(functionabc))有没有更好的办法?
Emacs称自己为自文档。这意味着您可以使用Emacs阅读编码在Emacs-Lisp文件中的文档。有没有一种简单的方法可以将此文档导出为HTML,以便可以将文档放在网站上?我知道FSF在http://www.gnu.org/software/emacs/manual/emacs.html发布了文档但并非所有Emacs模块都列在此处。更新:我对elisp文件中的文档感兴趣,而不是texinfo文件中的文档。我还想要功能和“主要模式”的文档。在Emacs文档查看器中,这一切都很好地进行了超链接,如果将其保留在HTML中就更好了。 最佳答案
我正在寻找一种解决方案,它允许我编写原生EmacsLisp代码并在编译时将其转换为HTML,例如Franz'shtmlgen:(html((:divclass"post")(:h1"Title")(:p"Hello,World!")))我当然可以writemyownmacros,但我对是否有任何解决此问题的项目感兴趣。 最佳答案 如你foundout,xmlgen从列表结构生成XML。我确实对``xmlgen`包感到失望,因为它支持的格式与Emacs的格式并不完全相反'xmlparser.我确实将它添加到我的xmlgen副本中:;;
是否可以在iOS中调用CommonLisp函数?如果是这样,是否可以在动态库中创建它? 最佳答案 这取决于调用CL函数的含义,但ECL很可能是您的最短路径。从这里开始,因为ECL有一个补丁可以更好地适应iOS:http://funcall.posterous.com/tag/iphoneECL生成C代码,因此您应该在Apple不断变化的政策下处于安全区域。 关于iphone-iPhone/iOS上的通用LISP,我们在StackOverflow上找到一个类似的问题:
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。ImprovethisquestionLISP和C#在函数式编程方面的主要区别是什么?具体而言,如果LISP程序员转而使用C#,他们最有可能错过的功能是什么?
我的一个friend引起了我的注意4thEuropeanLispSymposium的欢迎信息:...implementationandapplicationofanyoftheLispdialects,includingCommonLisp,Scheme,EmacsLisp,AutoLisp,ISLISP,Dylan,Clojure,ACL2,ECMAScript,...然后问ECMAScript是否真的是Lisp的一种方言。真的可以这么认为吗?为什么?是否有一套明确定义的标准来帮助我们检测一种语言是否是Lisp的方言?或者是一种非常宽松的方言(在这种情况下,我们可以将Python、P
基本上我想生成一个改变其工作目录的进程。我的想法是生成一个进程并设置PWD环境变量。有办法获得这样的东西吗?(实际上我想更改任何环境变量以获得灵active) 最佳答案 只需在生成进程之前绑定(bind)default-directory变量。示例:(let((default-directory"/tmp/"))(call-process"/bin/bash"nil"*scratch*"nil"-c""echoworkingdiris$PWD"))我从我的*scratch*缓冲区运行它,字符串workingdiris/tmp被添加到
我的配置中有一些东西只能在Xorg中工作,否则会出错。要解决这个问题,我需要知道Xorg是否正在运行。我该如何检查?(defunnCdy-mode();;TOOD:AddXorgcheck;(tool-bar-modenil)(menu-bar-modenil);TODO:Addhotkey;(scroll-bar-modenil)(setqinhibit-splash-screent)(setqstandard-indent4);;(mouse-wheel-modet)(setqbackup-directory-alist(quote((".*"."~/.emacs_backups/