老文章

prolog小结

prolog编程工具: swi-prolog 1. cut-fail 2. prolog 相关链接 3. prolog 调试 4. 可以尝试进行的主题阅读方式 5. prolog基础知识点 6. if-then-else的写法 7. DCS写法 8. p99问题集 9. 几本不错的逻辑书籍 10. 我购买的几本书籍
… 阅读全文>>

能真正教会你编程能力的是重写

写了很多的matlab,感觉就那样! 编了那么多数值fortran代码,也不见自己编程有多厉害! 练了那么多的java项目,也感觉自己的技术还不见飞涨! 用c语言摸索了好几年,也没见得有太深的见地! 真正决定你对程序的深入理解,需要你去认识EOPL或者SICP,亦或者更简单的TLS. 他们也许不能教你们做大的项目,却真切教会你编写程序,思考程序。
… 阅读全文>>

Ubuntu15.10-32bit-安装FastV8.15

Fast8.15在4-15又发布了新版本,增加了相关功能,具体参考FastV8.15. 下面就32bit ubuntu机子的安装过程做简要记录。
… 阅读全文>>

program-as-data

A program is like an essay. The first version is a draft, and drafts demand editing. Program is also can be seen as data. 直觉认识proc,提取body。 对比识别。 加壳。 三行表格,n列迭代。
… 阅读全文>>

scheme环境的几种表现形式-represtations

scheme的解释器的构造,都需要enviroment类型的参与,environment类型的抽象确是影响到语言的具体性能。
… 阅读全文>>

插入排序

排序算法是一种比较常见的算法,一般包括冒泡排序,插入排序,快速排序等。 本文主要是关于插入排序。
… 阅读全文>>

The Fifth interpreter with the implementation of letrec(Important)

letrec的作用是可以定义内部函数。它的实现类似于let,只不过let实现的主要是局部变量,而他是局部的过程(持保留意见)
… 阅读全文>>

The Fourth Interpreter about the traceproc

程序的过程追踪能力体现着一个独特的优势,本文在First Interpreter,Second Interpreter,Third Interpreter基础上实现新的解释器功能。 实现效果: enter: x = #(struct:num-val 30) exting: result = #(struct:num-val 29)
… 阅读全文>>

The third Interpreter implementing Proc

Scheme解释器的好处是可以不断的拓展自己语言的能力, 通过The First-interpreter-from-eopl创建了一个较为简单let-language,实现了较为简单的减法运算和let局部变量赋值等功能。 The Second Interpreter from on第一次扩展了基础的let-language,实现了四则运算,逻辑判断,列表操作,列表赋值等。 这个版本的解释器进一步拓展了过程定义和过程调用的功能。
… 阅读全文>>

The Second Interpreter from One

在[First Interpreter From EOPL][1]中我们定义了一个最为基本的解释器,包含解释以下解释部分 const-exp diff-exp zero?-exp if-exp var-exp let-exp 这六种是比较基础的形式,在此基础上我们可以增加四则运算,加入list操作,加入逻辑比较
… 阅读全文>>