Graphviz
Sedgewick
心存感恩地生活,自然而然地思考。
展开
-
爱上Graphviz
与其说Graphviz 是一个开源的画图软件,不如说它是一种画图语言。你把拓扑关系输进去,它会自动生成GIF, PNG, SVG 或者 PostScript 格式的图片。Graghviz 由一系列软件构成:dot 专门用来生成有层次的有向图。neato 则用于画网络拓扑这类的无向图。用于编辑的dotty…… DOT 的语法很简单。将下面的代码保存为 hello.dot(只要是.do原创 2008-07-24 15:23:00 · 4523 阅读 · 1 评论 -
ruby-graphviz 入门
自从写了一个关于Graphviz 的教程以来,我一直觉得它使用起来还不够方便。最近终于找到Graphviz 的Ruby 扩展了——ruby-graphviz。首先你得安装Graphviz,记得装在默认目录下,不然ruby-graphviz 找不到(我还不知道怎么设置PATH,请指教)。然后,gem 一下:gem install ruby-graphviz 接下来将见原创 2009-05-26 14:44:00 · 3822 阅读 · 0 评论 -
两百行写一个递归下降解析器
最近看到Peter Cooper 用Ruby 实现了一个Recursive Descent Parser。让我惊讶的是,作者仅仅用了255 行Ruby 代 码就实现了。于是我决定分析一下这个神奇的rdparser。先看看它怎么用吧。初始化需要定义语法规则:如果左边是终结符,右边对于正则表达式;如果是非终结符,对于非终结符或终结符组成的字符串。并列规则用竖线("|")连接。原创 2009-06-04 19:37:00 · 2585 阅读 · 0 评论