七度&光 2012-06-27 09:44 采纳率: 22.2%
浏览 401
已采纳

Clojure、 scheme / racket 和 Common Lisp 有什么区别?

I know they are dialects of the same family of language called lisp, but what exactly are the differences? Could you give an overview, if possible, covering topics such as syntax, characteristics, features and resources.

转载于:https://stackoverflow.com/questions/11223403/what-are-the-differences-between-clojure-scheme-racket-and-common-lisp

  • 写回答

4条回答 默认 最新

  • 胖鸭 2012-06-27 10:07
    关注

    They all have a lot in common:

    • Dynamic languages
    • Strongly typed
    • Compiled
    • Lisp-style syntax, i.e. code is written as a Lisp data structures (forms) with the most common pattern being function calls like: (function-name arg1 arg2)
    • Powerful macro systems that allow you to treat code as data and generate arbitrary code at runtime (often used to either "extend the language" with new syntax or create DSLs)
    • Often used in functional programming style, although have the ability to accommodate other paradigms
    • Emphasis in interactive development with a REPL (i.e. you interactively develop in a running instance of the code)

    Common Lisp distinctive features:

    Clojure distinctive features:

    • Largest library ecosystem, since you can directly use any Java libraries
    • Vectors [] and maps {} used as standard in addition to the standard lists () - in addition to the general usefullness of vectors and maps some believe this is a innovation which makes generally more readable
    • Greater emphasis on immutability and lazy functional programming, somewhat inspired by Haskell
    • Strong concurrency capabilities supported by software transactional memory at the language level (worth watching: http://www.infoq.com/presentations/Value-Identity-State-Rich-Hickey)

    Scheme distinctive features:

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 Revit2020下载问题
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大
  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)