展开

关键词

Lisp的本质(The Nature of Lisp)学习思考

我试着学了一下Lisp, 结果马上就撞了墙。我被那些范例代码吓坏了。我想很多初次接触Lisp语言的人, 一定也有过类似的感受。Lisp的语法太次了。 比如说: Lisp的括号只是表面现象; Lisp的代码和数据的表达方式没有差别, 而且比XML语法高明许多, 所以有无穷的好处; Lisp有强大无比的元语言能力, 程序员可以写出自我维护的代码; Lisp 你好, Lisp 到此刻为止, 我们所知的关于Lisp的指示可以总结为一句话: Lisp是一个可执行的语法更优美的XML, 但我们还没有说Lisp是怎样做到这一点的, 现在开始补上这个话题。 尽管在电脑科学领域, Lisp已经算是一门古老的语言, 直到现在仍然很少有人真的明白该怎样给初学者讲授Lisp。尽管Lisp老手们尽了很大努力,今天新手学习Lisp仍然是困难重重。 好在现在事情正在发生变化, Lisp的资源正在迅速增加, 随着时间推移, Lisp将会越来越受关注。Lisp使人超越平庸, 走到前沿。

60460

Emacs Lisp

前言 Lisp 是一门很古老的语言 LISP 是具有悠久历史的计算机编程语言家族,有独特和完全括号的前缀符号表示法,起源于1958年,是现今第二悠久而仍广泛使用的高级编程语言,只有 FORTRAN 编程语言比它更早一年 ,LISP 编程语族已经演变出许多种方言,现代最著名的通用编程语种是 Common Lisp 和 Scheme , 以上解释来自 WIKI Emacs LispLisp 的一个分支 Emacs Lisp ,一种直译式的脚本语言,为LISP的方言之一,GNU Emacs与XEmacs文字编辑器都使用这个编程语言来扩展它们的功能,它的直译器是以C语言来实作的,它受到Maclisp的影响很大,但是跟Common ;; 为了实验本教程中的lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下, ;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果 ;; 进入lisp-interaction-mode的方法: 把光标移动到辅助输入区,键入M-x lisp-interaction-mode ;; 然后回车。

12440
  • 广告
    关闭

    90+款云产品免费体验

    提供包括云服务器,云数据库在内的90+款云计算产品。打造一站式的云产品试用服务,助力开发者和企业零门槛上云。

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Emacs Lisp

    前言Lisp 是一门很古老的语言LISP 是具有悠久历史的计算机编程语言家族,有独特和完全括号的前缀符号表示法,起源于1958年,是现今第二悠久而仍广泛使用的高级编程语言,只有 FORTRAN 编程语言比它更早一年 ,LISP 编程语族已经演变出许多种方言,现代最著名的通用编程语种是 Common Lisp 和 Scheme , 以上解释来自 WIKIEmacs LispLisp 的一个分支Emacs Lisp ,一种直译式的脚本语言,为LISP的方言之一,GNU Emacs与XEmacs文字编辑器都使用这个编程语言来扩展它们的功能,它的直译器是以C语言来实作的,它受到Maclisp的影响很大,但是跟Common Lisp与Scheme有所不同最近我迷上了 Emacs所以顺藤摸瓜,竟然搭进去了一门语言万万没想到,为了了解一个编辑器,竟然搭进去了一门语言好在这门语言结构比较简单清晰以致于可以用 15 分钟入个门Tip : 这一篇纯属于摘抄,不是原创,只是好东西忍不住拿出来分享,如果原作者有意见,可以随时联系我,下线此文章,我完全尊重原作者的意见原文,请参考 Emacs Lisp 15 分钟入门

    8640

    走进 racket(lisp) 的世界

    racket是一个lisp [1] 家族的语言,祖上是common lisp [2] 对立的阵营scheme [3],起初为教学的目的而创立。 像lisp这样能够编写macro的语言,如果无法调试macro,简直就是一场灾难,当时玩clojure进行不下去也是稍微复杂一点的macro总写不对有关(我的功力实在有限),但DrRacket的 "Macro racket的其它优点,都或多或少跟lisp有关,这个我觉得自己不必多讲。 如果你看过「黑客与画家」,就知道Paul Graham近乎偏执地把一切溢美之词都给了lisp,说它是最有表现力的语言,说lisp是自己公司成功的"secret weapon"。 对于lisp的优点,比如说一切皆为表达式,一切表达式皆可计算为一个值或一个list,语言可以在任何时候(读取,编译,执行)可用等等,可以看阮一峰的博文「为什么Lisp语言如此先进」[5],这里就不赘述。

    1.1K30

    Emacs Lisp

    前言 Lisp 是一门很古老的语言 LISP 是具有悠久历史的计算机编程语言家族,有独特和完全括号的前缀符号表示法,起源于1958年,是现今第二悠久而仍广泛使用的高级编程语言,只有 FORTRAN 编程语言比它更早一年 ,LISP 编程语族已经演变出许多种方言,现代最著名的通用编程语种是 Common Lisp 和 Scheme , 以上解释来自 WIKI Emacs LispLisp 的一个分支 Emacs Lisp ,一种直译式的脚本语言,为LISP的方言之一,GNU Emacs与XEmacs文字编辑器都使用这个编程语言来扩展它们的功能,它的直译器是以C语言来实作的,它受到Maclisp的影响很大,但是跟Common ;; 为了实验本教程中的lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下, ;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果 ;; 进入lisp-interaction-mode的方法: 把光标移动到辅助输入区,键入M-x lisp-interaction-mode ;; 然后回车。

    22330

    Emacs Lisp2

    see the file named COPYING.wilmos@Nothing:~$ 代码直接上代码跟着代码边学边做;; This gives an introduction to Emacs Lisp ;; 为了实验本教程中的lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下,;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果 ;; 进入lisp-interaction-mode的方法: 把光标移动到辅助输入区,键入M-x lisp-interaction-mode ;; 然后回车。 == 表达式,变量和函数 ==;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 冒号在Lisp中表示注释 真的很简洁优雅只是括号看起来有点怪它提供了编程的另一种思维方式很值得花时间了解一下----原文地址http://soft.dog/2018/07/23/emacs-lisp/

    8940

    Clojure与LispClojure与Lisp

    Clojure与Lisp "Lisp 不是一门语言,它是一种构建素材。" (格林斯潘第十定律(Greenspun's Tenth Rule)) Clojure是一门Lisp方言(Lisp dialect). 自1960代末年至1980年初年,各种更新LISP版本涌现,有源自加利福尼亚大学伯克利分校的Franz Lisp、在AutoCAD运行的AutoLISP前身XLISP、犹他大学开展的Standard Lisp Lisp语言就好比是快速排序(Quicksort)算法,这种算法是1960年提出的,至今仍然是最快的通用排序方法。 Lisp的思想 Lisp语言诞生的时候,就包含了9种新思想。 Lisp的宏 Lisp语言刚出现的时候,它的思想与其他编程语言大相径庭。后者的设计思想主要由50年代后期的硬件决定。随着时间流逝,流行的编程语言不断更新换代,语言设计思想逐渐向Lisp靠拢。

    36930

    Lisp 学习资源集锦

    /acl-chinese 2、《On Lisp》 中文版 https://www.kancloud.cn/ituring/on-lisp 备用地址-W3C:https://www.w3cschool.cn /on_lisp/ 3、《Practical Common Lisp》 英语原文电子书:http://www.gigamonkeys.com/book/ 4、易百教程 Lisp教程:https://www.yiibai.com /lisp/ 5、相关网站 深度开源:http://www.open-open.com/lib/list/294 segmentfault:https://segmentfault.com/t/lisp common-lisp:https://common-lisp.net/ 一个国外教程网:https://www.tutorialspoint.com/lisp/index.htm 6、网易云课堂 《 4)《Practical Common Lisp》大神田春翻译的中文版《实用Common Lisp编程》已经出版。 5)《On Lisp》也是Paul大神的作品,好像是进阶修炼版本。

    94430

    Emacs Lisp1

    7230

    GNU emacs Lisp小结3

    可以使用M-x visit-tages-table来指定 C-h p 命令让你用主题关键字搜索Emacs Lisp标准库。 Don't use this in Lisp programs!

    40130

    Parse Lisp Expression

    Parse Lisp Expression 传送门:736. Parse Lisp Expression Problem: You are given a string expression representing a Lisp-like expression

    48570

    为什么Lisp语言如此先进?(译文)

    你会发现,排在越后面的语言,越像Lisp。 Python模仿Lisp,甚至把许多Lisp黑客认为属于设计错误的功能,也一起模仿了。 直到今天,最高级的主流语言,也只是刚刚接近Lisp的水平。虽然已经很接近了,但还是没有Lisp那样强大。 四、 Lisp语言诞生的时候,就包含了9种新思想。 在读取期运行代码,使得用户可以重新调整(reprogram)Lisp的语法;在编译期运行代码,则是Lisp宏的工作基础;在运行期编译代码,使得Lisp可以在Emacs这样的程序中,充当扩展语言(extension 就我所知,宏(采用Lisp语言的定义)目前仍然是Lisp独有的。一个原因是为了使用宏,你大概不得不让你的语言看上去像Lisp一样古怪。 如果使用Lisp语言,能让程序变得多短?以Lisp和C的比较为例,我听到的大多数说法是C代码的长度是Lisp的7倍到10倍。

    43860

    Lisp语言简介_c++是什么语言

    大家好,又见面了,我是你们的朋友全栈君 摘自维基百科,原链接为:http://zh.wikipedia.org/zh/LISP 因为Clojure是Lisp的一种的方言,所以我们可以先来了解一下Lisp LISP有很多种方言,各个实现中的语言不完全一样。1980年代Guy L. Steele编写了Common Lisp试图进行标准化,这个标准被大多数解释器和编译器所接受。 在Unix/Linux系统中,还有一种和Emacs一起的Emacs Lisp(而Emacs正是用Lisp作为扩展语言进行功能扩展的)非常流行,并建立了自己的标准。 LISP语言的主要现代版本包括Common Lisp和Scheme。 基本介绍 LISP 是第一個函數型程式語言,区别于C/Java等命令型编程语言。 由于历史的原因,Lisp长期以来被认为主要用于AI领域,但Lisp并不是为AI而设计,而是一种通用的编程语言.

    6120

    《From SICP to Lisp》视频回播

    一方面可能是准备不足,ppt 内容上下文衔接不够;另一方面是没有定位好受众人群,对于没有看过 SICP 的同学来说可能不知道我再说什么,离我的初衷相差甚远 不过我觉得也还行,毕竟走出了第一步,算是正式开始了 Lisp PPT 下载地址:https://github.com/jiacai2050/lisp_share Happy Lispping

    7620

    Lisp学习--Windows下面的开发环境搭建

    很久以前,就准备学习Lisp,但是遇到不少困难,社区太凌乱,也一直很犹豫,直到看了《Common Lisp - 想说爱你不容易》,想看看Common Lisp怎么样,之前都是拿Lisp的方言Schemel 正好有一篇Windows下如何安装使用CLISP的文章《Lisp语言: 在Windows下搭建CLisp环境》,于是在官网下载了一个安装程序 http/SF     (sources and win32 现在,可以开始Common Lisp的学习之旅了,比如写第一个函数: ? 全选文字,右键菜单,发送到Lisp执行,就得到了结果4,很方便。 有了这个,大家还觉得学习Lisp很复杂么? 参考: 推荐另外一种Lisp环境 AllegroCL ,它有图形化的编程环境,可以开发窗体应用程序,请参考文章 Windows环境下学习Lisp和Scheme的两大利器 (http://seagate.iteye.com

    1.7K60

    如何用Python编写一个Lisp解释器

    (有人开玩笑说 Lisp 就是“大量把人搞疯的括号”;而我认为 Lisp 象征着语法的纯粹性。) 而研究生伙伴 Tony DeRose 也有同样的需求,于是他们一起勾勒出了一个简单的 Lisp 程序,可用作预处理器。 然而,他们当时造出的 Lisp 虽然善于读取 Lisp 表达式,但读取非 Lisp 表达式时,慢得令人发指。 于是,作者和 Tony 分道扬镳了。 Tony 认为最难的部分是表达式的解释器;需要的是 Lisp,他知道如何编写 C 程序来处理非 Lisp 字符,并将其链接到 Lisp 程序。 有趣的是,Tony 用 C 写了个 Lisp 程序,因为他是个 C 程序员。而我写了个 C 程序,因为我是个 Lisp 程序员。 最后,他们都把工作搞定了。

    54740

    ANSI Common Lisp 第二章习题解答

    本文是个人对第二章:欢迎来到 Lisp——ANSI Common Lisp 中文版 一文中习题的解答。 1.

    37710

    ANSI Common Lisp 第二章习题解答

    本文是个人对第二章:欢迎来到 Lisp——ANSI Common Lisp 中文版 一文中习题的解答。 1.

    6940

    用 350 行代码从零开始,将 Lisp 编译成 JavaScript

    我们将会在本篇文章中看到从零开始实现的编译器,将简单的类 LISP 计算语言编译成 JavaScript。完整的源代码在 这里。 1、定义语言 Lisp 族语言最迷人的地方在于,它们的语法就是树状表示的,这就是这门语言很容易解析的原因。我们很快就能接触到它。但首先让我们把自己的语言定义好。 用我们的编译器运行第一节的示例,产生的 JavaScript 代码如下: $ runhaskell Lisp.hs example.lsp (function(compose, square, add1 return (x * x); }, function(x) { return (x + 1); }) 如果你在自己电脑上安装了 node.js,你可以用以下命令运行这段代码: $ runhaskell Lisp.hs

    12240

    日拱一卒,伯克利CS61A,作业10,用Lisp开发宏

    return start else: return combiner(term(n), accmulate(combiner, start, n-1, term)) 再用lisp

    6730

    相关产品

    • 腾讯智慧建筑管理平台

      腾讯智慧建筑管理平台

      腾讯智慧建筑管理平台(微瓴)是深度适配智慧建筑场景的物联网类操作系统,针对于建筑内的硬件、应用等资源,提供物联、管理与数字服务,赋予建筑综合协同的智慧能力,并为建筑管理运营者与建筑业主方提供安全、高效、便利的建筑综合管理运营系统……

    相关资讯

    热门标签

    活动推荐

    扫码关注腾讯云开发者

    领取腾讯云代金券