惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Secure Thoughts
Security Latest
Security Latest
Simon Willison's Weblog
Simon Willison's Weblog
O
OpenAI News
GbyAI
GbyAI
L
LINUX DO - 最新话题
A
Arctic Wolf
T
Tor Project blog
G
GRAHAM CLULEY
I
InfoQ
博客园_首页
IT之家
IT之家
The Register - Security
The Register - Security
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
P
Proofpoint News Feed
The GitHub Blog
The GitHub Blog
Blog — PlanetScale
Blog — PlanetScale
N
Netflix TechBlog - Medium
K
Kaspersky official blog
博客园 - 三生石上(FineUI控件)
S
SegmentFault 最新的问题
U
Unit 42
PCI Perspectives
PCI Perspectives
量子位
P
Palo Alto Networks Blog
S
Securelist
T
Troy Hunt's Blog
博客园 - 【当耐特】
Recorded Future
Recorded Future
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
S
Security Affairs
Engineering at Meta
Engineering at Meta
T
The Blog of Author Tim Ferriss
博客园 - 聂微东
罗磊的独立博客
N
News and Events Feed by Topic
人人都是产品经理
人人都是产品经理
B
Blog RSS Feed
NISL@THU
NISL@THU
C
Cisco Blogs
T
Threatpost
有赞技术团队
有赞技术团队
Forbes - Security
Forbes - Security
Hugging Face - Blog
Hugging Face - Blog
Last Week in AI
Last Week in AI
T
The Exploit Database - CXSecurity.com
Cloudbric
Cloudbric
Cyberwarzone
Cyberwarzone
Google DeepMind News
Google DeepMind News
C
Cyber Attacks, Cyber Crime and Cyber Security

Lisp

大佬们有没有推荐 lisp 的资料,最好是 ansi lisp - V2EX Lem 编辑器, Emacs 的继任者 - V2EX 请问 lisp people, 哪些能力是只有宏能实现,而函数不能实现的? - V2EX 试了试缩进语法写 Lisp - V2EX 是什么原因没有让 lisp 进入工业界(公司)的首选语言呢 - V2EX 一款 lisp 写的基于 GPU 渲染的编辑器 - V2EX SICP 走起 - V2EX [101]如何在迭代展开过程中输出中间数据? - V2EX The Humble Book Bundle: be a coder - V2EX scheme 一个好玩的开源库 - V2EX lambda calculus 解决了什么问题? 为什么会出现这个理论? 为什么说它很有价值? - V2EX 哪里可以找到关于 ANSI Common Lisp 中函数名字的由来? - V2EX Ask Him Anything: Lisp 社区的核心贡献者 - Kartik Agaram - V2EX 怎么看 Clozure Common Lisp 的 image 的内容? - V2EX 写了一份 Racket/Emacs 的入门配置指南 - V2EX Scheme 与 Church Number - V2EX 用过 racket 的进,其实只要你觉得有兴趣的都可以过来看看 - V2EX 我使用 GNU Common Lisp 开始 Lisp 的学习 - V2EX 在读 On Lisp - V2EX 学Clojure的朋友们快去做4clojure啊! - V2EX Exercise SICP in Lua - V2EX 想给身边的人推荐lisp但是发现接受的很少 - V2EX Lisp 的 Vim 插件有什么推荐? - V2EX 有人关注ansi common lisp么?可以看一下豆瓣上的这两个贴 - V2EX SICP一書學完大約要多長時間? - V2EX 看了《黑客与画家》就觉得Lisp很强大要去学一下的人弱爆了,你们到底看没看明白作者的中心主旨是什么? - V2EX 求lisp的一些简单demo - V2EX 有对Lisp感兴趣的不? 自从看了黑客与画家就对这个很神往,除了AutoLisp有没有别的著名的应用呢? - V2EX 有人学或用Lisp的吗? - V2EX a haiku - V2EX 在Lisp节点里新建个主题 - V2EX
又一个玩具 Scheme 解释器,使用 Python 编写 - V2EX
kcworms · 2015-03-14 · via Lisp

这是一个创建于 4110 天前的主题,其中的信息可能已经有所发展或是发生改变。

其实在本站搜索可以找到已经有人写过了(顺便里面提到的lispy非常值得参考),这个的功能绝对没有希望……不过这个应该有一些特别的地方:

  • 与SICP第四章4.1.5节之前做的元循环求值器对应,但是使用了OO风格(基本就是照着书抄代码,又轻松又快乐……使用了OO,有点类似前几章提到的消息传递风格)
  • 暂时不到500行(不包括空行,注释,测试)
  • 这种玩法真的比做无聊的习题好玩得多

现在的状况是可以运行练习2.42(八皇后谜题的那个)的代码,但是参数设成5就会突破Py递归深度上限。除法和浮点数都不能用!

这个项目应该可以完成第四章的使命,等做到4.1.7节分离语法分析与求值过程之后顺便加一下尾递归优化应该可以把上面的问题解决……

Repo

第 1 条附言  ·  2015 年 3 月 16 日

4.1.7节的优化已经弄好了。令人感动的是原来能解(queen-louis 5),现在只能解4了。虽然速度是快了很多,果然eval本身还要改成迭代

第 2 条附言  ·  2015 年 3 月 21 日

第 3 条附言  ·  2015 年 3 月 24 日

加上了两个对于玩具来说比较强大的功能:
尾递归优化(只消除尾递归,而不是所有tail-call)
递归无上限,直到用完内存
假冒的traceback

不科学的性能比较:
八皇后习题中queens过程,用时是Racket的100倍
递归定义的阶乘过程,用时是Racket的2倍(真不科学)

第 4 条附言  ·  2015 年 7 月 2 日

应该是最后一次更新了:
加入call/cc
去掉了假冒的traceback,并优化所有tail-call
继续补充基本过程

结果是可以运行原来书上的那个元循环解释器了。对于call/cc至少维基百科页面里的generator例子是可以运行的。

最后是令人悲伤的性能:
对于(queen 8),Racket用了0.6秒。TSI在加上PyPy魔法之后用的时间居然是前者的30倍