Wxf`s Fantasy World

share something useful


编程语言关注点

快速翻了sicp,对编程语言及编程技巧,做一快速总结。

过程抽象

一般而言,程序语言会对可计算元素的可能使用方式加上某种限制,带有最少限制的元素称之为具有“第一级”状态,具有“第一级”状态的元素特权包括:

使用变量命名
使用过程作为参数
过程作为返回结果
可以包含在数据结构中

上述四个限制可以实现很复杂的过程抽象,具体等用到了再翻书。

数据抽象

层次性数据、闭包特性(一种类似粘合剂的技巧,来构建数据抽象)
base: 表数据(序列数据)
map+递归
信号流处理方式
分层设计

模块化及状态

函数式编程:数据处理引入流,这样可以保证过程抽象的一致性,但是存在性能问题
面向对象:直接操作数据,引入环境模型,同时引入了并发的问题
约束系统

元语言抽象

运用上面提到的三种技巧,通过自举,实现求值器,通过求值器,来实现不同功能的编程语言

end

对编程语言的表达力探索,到此为止,基本就是上面提到的内容了,next,linux系统核心