大家如何评价Lisp语言? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不在回答技术问题时复制粘贴 AI 生成的内容
mozartgho
V2EX    程序员

大家如何评价Lisp语言?

  •  
  •   mozartgho 2013-05-17 15:24:55 +08:00 11611 次点击
    这是一个创建于 4532 天前的主题,其中的信息可能已经有所发展或是发生改变。
    大家如何评价Lisp语言,《黑客与画家》里Paul力捧Lisp,但是Lisp好像很少在工程应用中出现。只有一些科研机构用的比较多。不知道这里有没有在自己的项目中使用Lisp的经验,可以分享下。而且用它写程序完全是另一种思维,要完全熟练掌握的话,需要花大力气。大家觉得有没有必要学一种在工作中完全用不着,然后可能未来也不太可能会用到的语言。

    另外我对很多人提到的 “学Lisp虽然不会教你剑招,但对提升内力很有帮助” 这样的观点表示怀疑!
    37 条回复    1970-01-01 08:00:00 +08:00
    tysx
        1
    tysx  
       2013-05-17 15:58:42 +08:00
    装逼神器
    sivacohan
        2
    sivacohan  
    PRO
       2013-05-17 16:02:08 +08:00 via Android
    没学过。o yeah~
    bitsmix
        3
    bitsmix  
       2013-05-17 16:03:17 +08:00
    先学再说呗
    ruchee
        4
    ruchee  
       2013-05-17 16:15:48 +08:00
    学学就知道了

    在我用会Vim之前我也同样对Vim的声誉表示怀疑,用会以后才知道此言不虚

    Lisp同理
    Cadina
        5
    Cadina  
       2013-05-17 16:19:44 +08:00
    都不了解就来评价
    chemzqm
        6
    chemzqm  
       2013-05-17 17:19:53 +08:00
    "另外我对很多人提到的 “学Lisp虽然不会教你剑招,但对提升内力很有帮助” 这样的观点表示怀疑!"
    为什么怀疑?
    bengol
        7
    bengol  
       2013-05-17 17:27:03 +08:00
    越来越像cnbeta了啊,各种喷
    mozartgho
        8
    mozartgho  
    OP
       2013-05-17 17:30:54 +08:00
    @chemzqm 拿C++来说,两种语言编程的思路完全不同。所以即使Lisp很熟,对C++技能的提升也没多大帮助。就好像我现在很熟悉C++,但是发现对于提升Lisp技能没什么帮助一样。完全不一样的东西,我很讨厌“编程语言都是想通的”这样的言论。
    RisingV
        9
    RisingV  
       2013-05-17 17:32:51 +08:00
    是程序员很爽,机器很不爽的语言。诞生的时候,芯片远还没今天那么快,而且昂贵。所以工业上不会去采用。久而久之,到了今天,世界已经是命令式语言的天下了。思维方式比较难改变的,企业也不大招得到这方面的人。就算生产环境用得不多,但是它还是为其它语言的设计提供了很多灵感。
    hooluupog
        10
    hooluupog  
       2013-05-17 19:36:06 +08:00
    很难大面积普及使用,搞数学和搞研究的好像很喜欢lisp。不过一定要学一下,毕竟现在这么多主流语言借鉴了一些函数式编程的思想,学和实际中使用不冲突。
    Kymair
        11
    Kymair  
       2013-05-17 20:00:30 +08:00
    Lisp简直就是计算本身啊…
    我学了一段时间Clojure之后再回去看Ruby和Javascript觉得很多地方都豁然开朗了。
    所以我是真的认同Lisp增强内力的说法的 XD
    darasion
        12
    darasion  
       2013-05-17 20:02:07 +08:00
    虽不明,但觉厉。
    Hualin
        13
    Hualin  
       2013-05-17 20:08:01 +08:00   1
    科研机构用?你指哪方面科研机构,其实他们也不用。

    你还没学过 Lisp 就那么想质疑想知道有没有,一个你压根不了解的东西,你就算知道“大家怎么评价它”,又能改变你什么?

    要看为啥就戳这里,其实看了也白看
    http://blog.jobbole.com/18587/
    itopidea
        14
    itopidea  
       2013-05-17 20:12:54 +08:00 via Android
    很喜欢的编程语言。
    ivenvd
        15
    ivenvd  
       2013-05-17 20:18:13 +08:00
    @mozartgho “所以即使Lisp很熟,对C++技能的提升也没多大帮助。就好像我现在很熟悉C++,但是发现对于提升Lisp技能没什么帮助一样。”

    诡辩。

    正因为编程思想不一样,你没学过 Lisp,所以再熟悉 C++ 也不会对 Lisp 有帮助。反过来你已经学过 C++,所以学 Lisp 会对 C++ 有帮助。有疑问?
    flypiggy
        16
    flypiggy  
       2013-05-17 20:52:16 +08:00
    没了解之前觉得看上去就很烦.....稍微了解下大爱!

    scheme做大学的第一门语言不是没道理的..
    tootight
        17
    tootight  
       2013-05-17 20:57:29 +08:00
    我是因为 emacs 才学的 lisp,
    因为有需求, 学会后可以直接用上,
    语言类的也没必要争个好坏, 能实际应用起来就可以了
    momo5269
        18
    momo5269  
       2013-05-17 20:58:52 +08:00
    括号太多了.......手写时候还真是d疼啊。听别人说的有范型方面的优越性什么的,还有autolisp也是lisp撒。至于项目,没啥了解,可以去问问田春(tianchunbinghe.blog.163.com) 至少我觉得国内第一人是他吧...
    skywalker
        19
    skywalker  
       2013-05-17 21:07:43 +08:00
    clojure很好
    Hyperion
        20
    Hyperion  
       2013-05-17 21:17:30 +08:00
    写起来学起来都费脑... 另外, 编程语言是不是相通, 这得看你从那个角度去比较. 有些层面上完全是翻天覆地的变化. 反正最后都是喂cpu吃指令, 硬要说相通也没办法...
    luikore
        21
    luikore  
       2013-05-17 21:40:31 +08:00
    elisp 过来人表示虽然和 ruby 很相似但远没 ruby 好使

    稍微了解了下 clojure, scheme 就做过 SICP 习题, 装了 sbcl 只写了点 hello world 和查了下集合的 API, 都没发现让人眼前一亮的地方...
    skydark
        22
    skydark  
       2013-05-17 22:44:12 +08:00   1
    想起小学学到简易方程的时候,一大片同学抱怨这货完全没必要嘛,反正当普通应用题做也不难,列方程求解还写的好长,有啥好的?
    Lisp应该当作数学/计算来学。嗯,数学恰好符合你说的“用它写程序完全是另一种思维,要完全熟练掌握的话,需要花大力气……在工作中完全用不着(雾),然后可能未来也不太可能会用到(大雾)……虽然不会教你剑招,但对提升内力很有帮助……” _(:з」∠)_
    duhastmich
        23
    duhastmich  
       2013-05-17 22:47:15 +08:00   1
    carmack 前一阵子在c++ 里搞fp, 现在干脆搞 haskell了,fp显然有它吸引人的地方
    http://www.reddit.com/r/haskell/comments/1dwjup/john_carmack_starting_port_of_wolf_3d_in_haskell/
    Hongmin
        24
    Hongmin  
       2013-05-18 00:30:24 +08:00 via iPad
    Lisp有很多方言,差别也都不小吧。
    本人断断续续学了半年scheme,读过sicp,the little schemer,the scheme programming language。
    最大的感觉就是写lisp程序时需要更多的思考。另外,一些语法也不易弄懂,如continuation,macro。
    最近Javascript使用的较多,感觉这厮就是一lisp方言啊。有了scheme的经历,对深入掌握js帮助极大。
    seeker
        25
    seeker  
       2013-05-18 00:58:37 +08:00
    动态类型函数式语言lisp系(scheme, racket, common lisp...),静态类型函数式语言sml, haskell,动态类型面向对象语言smalltalk, ruby,静态类型面向对象语言java, c#, c++。
    都看看有好处。
    比如:了解lisp,那java 8里头加的lambda就知道了由来和一般用法;就知道ruby里面的block本质。
    很对新语言都揉合了函数式、面向对象,比如OCaml,scala,f#。看多了以后,再学其他xxx语言,就轻松很多(所谓内功?)。
    FrankFang128
        26
    FrankFang128  
       2013-05-18 01:14:13 +08:00
    没地方用,很快就忘了。
    kylefeng
        27
    kylefeng  
       2013-05-18 15:21:49 +08:00
    自己去学一下就知道了呗,要想比较实用一点可以去看 Clojure,可以和 Java 平台比较好的结合起来。
    middleware
        28
    middleware  
       2013-05-27 09:11:43 +08:00
    Lisp 除了 S-exp 的语法(为了 macro)和 full-continuation,已经被其它语言借鉴光了(特别是 Lua)。Clojure 是为了用 JVM。如果不搞 JVM 还不如 Lua/Ruby 之类。
    Radeon
        29
    Radeon  
       2013-05-27 09:14:23 +08:00
    Functional Programming语言本质上是比较反RAM机模型的,也就是算法不友好
    leizongmin
        30
    leizongmin  
       2013-05-27 09:27:23 +08:00
    写AutoCAD扩展用的就是AutoLisp
    davepkxxx
        31
    davepkxxx  
       2013-05-27 09:45:25 +08:00
    正在学Clojure,感觉这个语言效率一般,但是想法很好。
    ayang23
        32
    ayang23  
       2013-05-27 10:20:35 +08:00
    自我感觉haskell比lisp舒服多了,而且现在functional programming研究的前沿应该是属于haskell的。lisp,我觉得学会写emacs配置文件就够了。
    2dian718
        33
    2dian718  
       2013-05-27 17:35:55 +08:00
    其实看看sicp挺好。学lisp也是为了学它的思想。
    wodemyworld
        34
    wodemyworld  
       2013-05-27 17:45:29 +08:00
    lisp思想很。。。。。不那么容易转过弯来,尤其是oo大行其道的今天
    不过它的宏是今天没有任何语言能比的
    效率嘛,不能说差,只能说解释器实现的不好,如果lisp机还在的话,还能算的上是效率最高的呢,主要还是看自己怎么优化,在今天的话,你也可以跑程序在FPGA上,优化的方法有很多,主要看自己的能力
    ijse
        35
    ijse  
       2013-05-27 17:57:04 +08:00
    一定是不错的语言,否则 它怎么还会现在都在有人用它、谈论它。。

    对LIST也有过稍微了解,当兴趣学学它应该 是不错的,, 对写程序有了另一种思考方式,会很好玩。。
    clino
        36
    clino  
       2013-05-27 23:10:29 +08:00
    @Hualin 这篇很有意思,有些地方要笑死了,不过写在快10年前了,作者看好的ruby没有取代perl,而是在web开发上大行其道,python 倒是差不多可以说取代了perl原来的位置
    Hualin
        37
    Hualin  
       2013-05-27 23:38:57 +08:00
    @clino 对的。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1243 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 31ms UTC 23:35 PVG 07:35 LAX 16:35 JFK 19:35
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86