Scheme R5RS解读笔记

编程入门 行业动态 更新时间:2024-10-11 23:18:18

Scheme R5RS解读<a href=https://www.elefans.com/category/jswz/34/1770047.html style=笔记"/>

Scheme R5RS解读笔记

2012-12-23 R5RS      Revision 5 Report on the Algorithmic Language Scheme 即Scheme标准的第五版

我打算在毕业前,以这个语言标准作为研究的重点。这么小众的语言, 好怕研究多了没饭吃哦!

还是每天三个个小时的Erlang,一分钟都不能缺。3 * 30 * 5 = 450 小时 掐指头算你你能干点儿啥吧!

 

Mit-scheme ref 上 写着:

(equal? (lambda (x) x)
(lambda (y) y)) )   à unspecified

而在mit-scheme 9.1 上运行, 却得到 #f,  甚至

(equal? (lambda (x) x)
(lambda (x) x)) )   à #f

难道是认为任何procedure都是不同的。

4, 简单易学,


Dec 10th
好了,我现在要做的事情就是:标准已经有了,根据标准写出程序。(而且还有案例可以参考)
文档的书写, (一切要有理有据,有计划而行)
1, 数据结构是基础,复合数据类型一定要完成。否则对象之类的东西没法进行了。
2, Lisp中List是关键,对其各种操作优先实现
3,函数的定义
control feature
eval & apply, REPL 的实现
尾递归化

大问题:
GC, 我该怎么去实现呢?
debug 功能能有时间完成吗?
error怎么处理?
算了,先按照这个开始做吧。要想完成工作,方法只有一个: 现在就开始动手。
macro是高级话题,最后实现。
io功能,一年内,估计我是没有能力做的。 错了,这个应该好做,用C实现嘛,屏蔽了底层的细节,不是吗?
Object 的继承 更是高级特征, (话说我以前怎么这么笨,一上来就要实现Lisp的面向对象特性)。
不加点东西进去的话,就有点没有创新性了, 好吧,争取把面向对象实现了。我靠,你有那么多时间吗?
expression 还有type?怎么理解?
今日总结:
1, R5 只有 50页, MIT-scheme-ref 却有360也, 这就是规范和实现的差别。
2, 刚看了MIT-scheme-ref, 要实现我的”Unknown” lisp interpreter, 基本上会涉及到Introduction to Algorithms 中大部分内容。在毕业之前还是能对数据结构和算法稍有了解的。
3, 必须要选择两到三个Scheme开源项目,最好是MIT-scheme,guile的, 要阅读足够的代码,要有足够的输入,否则这指尖的经验不够啊。

 

[ 主页]

更多推荐

Scheme R5RS解读笔记

本文发布于:2024-02-19 18:17:36,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1765084.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:笔记   Scheme   R5RS

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!