-
2012-03-03
搬家了!
我的博客搬家了,搬到了一个华丽丽的域名下,
http://isaachan.thoughtworkers.org
欢迎持续关注! -
2011-09-11
基于Prolog构造Scheme子集的解析器——运行时环境 - [Prolog]
当解析器生成了抽象语法树(AST)后,运行时环境可以对它进行处理,计算语法树表达的数值。如果代码只是如下简单的四则运算,
(- 3 1)
(+ (* 3 5) 2)
那么对AST遍历一次就足够了,甚至在解析的过程中就可以获得结果了,根本不需要生成AST。但是,我们希望这个运行... -
2011-09-03
世界上只有一台机器,两种语言
你,我,都是程序员。
我们通过手中的代码操作一类叫做“计算机”的物体来改变世界。
在大多数人眼中,“计算机”是个范围宽泛的概念,它包括台式机、笔记本电脑、工作站、服务器、iPad、Andriod手机、智能电视、Kindle、汉王电纸书和读书郎学... -
文本化的幻灯片
作为一名体面的程序员,作为一名被Unix文化侵染的程序员,作为一名希望世界是由简单的纯文本构成的程序员,生活中充满太多无奈。二进制的格式无处不在,后缀名将文件分出了三六九等。这其中,有两种文件我最无奈,图像和幻灯片,它们总和我的工作生... -
今天随手写下了下面这段代码,被同事评论为“有点儿怪”,
repo.BatchSave(repo.FindByCountryId(options
&nb... -
2011-04-27
用PowerShell构建.Net项目 - [杂项]
PowerShell简介
很多很多很多年以前,UNIX把命令行发扬光大了;很多很多年以前,Microsoft把GUI发扬光大了;很多年以前,UNIX意识到了GUI是命令行的良好补充;五年前,Microsoft也意识到了纯粹的GUI是不够的。Microsoft自然知道原有的命令行解释器(cmd)和VB脚本是多... -
2011-04-24
基于Prolog构造Scheme子集的解析器——文法分析 - [Prolog]
我们知道,形式文法是由一组文法生成式组成的。一个生成式可能是这样子的,
IfStat -> 'if' '(' Expr ')' StateBlock
这是常见的描述if语句的生成式,它表达了这样的含义:如果匹配了‘if’,并且匹配了'(',并且匹配了Expr,并且匹配了')',并且遇到... -
2011-04-12
基于Prolog构造Scheme子集的解析器——词法分析 - [Prolog]
在第一节中,我们实现了readFile谓词,利用它可以读取源文件的内容,并把字节流保存在一个整数的列表中。接下来我们将消费这些数据,通过它们创建词法单元。因此,本节将讲述如何构造一个词法分析器来完成这件事。就像在第一节已经指出的,本文处理的只是Scheme的子... -
2011-04-12
基于Prolog构造Scheme子集的解析器——读取源文件 - [Prolog]
在下面一个系列的文章里,我将详细讲述如何利用Prolog,从零开始构造一个Scheme子集的运行时环境。这个运行时环境可以解释执行如下四则运算的Scheme代码:
(+ 1 2)
(+ (- 5 3) (* 2 3))
另外,它还可以通过“define”定义变量,
(define a 1)
(def... -
Prolog是个不寻常的编程语言,如果它能算作的语言的话。通常意义上,Prolog确确实是个编程语言,而且还是逻辑式的,图灵完备的,Java... -
2010-04-20
项目结束 关于代码的思考 - [项目体验]
上周结束了在一个项目里的工作。项目的规模在公司里是比较大的。几个月的时间里,我收获了很多关于个人技能的感悟,总结如下。
编写测试 over拥有测试 这是关于TDD的。TDD对于ThoughtWorks来说似乎熟悉地不屑于提起它。但是我们对于这个重要实践做得还很不够。TDD如果只流于像意识形态一般地喊口号(比如“社会主义好...”),那么它的功效就会损失大半。我们经常习惯于机械地写单元测试,目的只是想拥有足够多的测试,从而获得内心的一种“... -
2010-02-09
Hello Jasmin - [Java]
Jasmin(http://jasmin.sourceforge.net/)是Java虚拟机的汇编语言工具。你可以直接使用JVM的指令集,编写类似于汇编程序的代码,然后在JVM上运行。
首先来看看Jasmin版的Hello World:
--File: HelloWorld.j--
.class public HelloWorld
.super java/lang/Object ... -
昨天,我26岁了,奔奔三儿了(“奔”是二阶的)。
昨天北京下了一天的雪,记忆中已经很多年没有这么大的雪了。昨天很happy,早上就吃了妈妈做的打卤面,中午和她一起吃的火锅、蛋糕,还K歌到晚上。从KTV出来,仰望天空,雪花飘舞,映着周围商铺的彩灯,有些虚幻,有些让人忘记真实...
看到一个同学的留言,“1999-2009,和高中的兄弟姐们的已经相识十年了”,让我不禁有些感慨。现在,似乎有很多事情都可以用... -
2009-10-22
Hello World的字节码 - [Java]
这篇Blog作为测试之用。







