业余编程爱好者
发布时间:2013-03-06 16:35:18
目前《SICP》第三章的学习正在如火如荼的进行中,有点小感悟,总结如下:
?
第三章第一小节,主要介绍了使用对象化的方法来编程。之前两章中,我们将符号看做是一个名字,指代值或者过程的一个名字。通过第一章介绍的代换模型,总可以把一个过程代换成一系列基本的运算符号。这种也就是所谓的函数式编程,给定固定的输入,获得固定的输出,不会有改变。第三章中引进了赋值操作set!,这个运算符可以改变某个符号的值。这样代换模型就没法很好的解释程序行为了。这里我们不能把符号只看做一个名字,而必须看做是一个对象,拥有自己的值并存放在某处。通过赋值运算符,可以改变符号的值。在不同的情况下,求值同样的过程,可能有不同的解。其实说白了,就是scheme在这里引进了局部变量。......【阅读全文】
发布时间:2013-03-06 13:53:45
闲来无聊,用scheme写了个汉诺塔游戏,其实就是把我以前用C语言写的汉诺塔翻译成scheme。因为才学习到scheme如何实现堆栈操作,于是就用汉诺塔游戏来练练手。
?
?本来想把这个游戏写完整了,可以通过键盘操作来玩。但后面的部分其实就是C语言翻译过来的,用scheme写没有什么特别的优势。目前这个游戏还是个雏形,等有时间时实现完整。......【阅读全文】
发布时间:2013-02-23 14:37:54
我在github上的项目仓库Clang,原来是专门存放C语言代码的,现在改名为codefarm
项目地址:https://github.com/cforth......【阅读全文】
发布时间:2013-02-20 13:06:49
关于随机显示图片的代码很多,但有点只能在IE下才有效果,如果换在Firefox或其他浏览器下就会失去效果,能做到两全的JS真的很少,今天给大家介绍一个很简单的JS随机显示图片的代码。
// JavaScript Document
var m=10; //随机显示图片的总数量
var n=Math.floor(Math.random()*m+1)
document.write ("");
//......【阅读全文】
发布时间:2013-02-20 11:18:56
下面这条命令:
perl -pi -e 's|ABCD|Linux|g' `find ./ -type f`
将调用perl执行一条替换命令,把find命令找到的所有文件内容中的ABCD替换为Linux
find ./ -type f
此命令是显示当前目录下所有的文件
上面的“s|ABCD|Linux| g”是perl要执行的脚本,即把所有ABCD替换为Linux
如果不写最后的那个g,“s|ABCD|Linux| ”将只替换每一行开头的ABCD ......【阅读全文】
发布时间:2013-02-18 15:13:58
《SICP》第二章的学习,断断续续持续了有大半个月了,今天我要结束第二章的学习,计划进入第三章。下面趁自己还没完全忘光,小结下第二章学习:
这章主要讲了如何将数据组合起来,形成复合数据。通过序对和列表这种基本数据结构来保存数据,使用一系列的过程来构造复杂的复合数据。在构造复合数据的过程中,要经过良好的设计,将底层实现的细节有效的屏蔽起来。使得在操作复合数据时,不必关系每种复合数据内部的细节。......【阅读全文】
发布时间:2013-02-18 14:11:26
春节期间,我抽空恶补了网页基础,包括HTML、CSS、XML、JavaScript。我竟然一直没有学习网页基础知识,以至于自己成了信息高速公路上坡脚的山羊。这几天我是流水般得过了一遍这些知识,没有深入的研究。成果是做了个人博客,最简陋最难看的那种。博客托管在gitcafe上,使用了它的page服务。......【阅读全文】