scheme

What Is Y

evens-only and its collector (define evens-only* (lambda (l) (letrec ((atom? (lambda (a) (and (not (pair? a)) (not (null? a))))) ;; error definition of even ;; (even? (lambda (n) ;; (=
… 阅读全文>>

What's the Same

什么是公平? 没有人知道公平是什么,all atoms create equal! eq? 比较两个字符
… 阅读全文>>

From Little Scheme to Season Scheme

The Little Scheme(TLS) 提出了rember,multirember,multi
… 阅读全文>>

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操作,加入逻辑比较
… 阅读全文>>