最近在看DSL的东西,对于外部DSL,写一个解释器是必不可少的。我试图归纳一下我学到的,以写一个解释器为目标,讲一下如果来实现一个可用的解释器。一个解释器通常可以分为一下几个阶段:
词法分析(Lexer) 语法分析(Parser, BNF, CFG, AST) 语义分析(AST的处理, annota...
分类:
其他好文 时间:
2014-04-30 00:39:01
阅读次数:
466
网上搜索了很多关于python的zipfile压缩、解压缩。觉得讲述比较详细,例子也很明了。由于比较懒,就直接复制了。以下内容大部分转于http://blog.csdn.net/jgood/article/details/4351911
zip文件格式是通用的文档压缩标准,在ziplib模块中,使....
分类:
编程语言 时间:
2014-04-29 23:43:36
阅读次数:
795
[uwsgi]socket = 127.0.0.1:3032chdir =
/data/www/yida/pythonpath = ..env = DJANGO_SETTINGS_MODULE=yida.settingsmodule =
django.core.handlers.wsgi:WSGIH...
分类:
其他好文 时间:
2014-04-29 23:26:08
阅读次数:
611
1、oop的意义:oop就是代码的重用:分解代码,最小化代码的冗余以及对现存的代码进行定制来编写程序。而不是实地的修改代码,或者从头开始2、继承搜索在那里查找属性:继承搜索会先在实例对象中寻找属性,然后
才是创建实例的类,之后是所有较高的超类,由对象树底端到顶端,并且至右侧。当属性首次找到时,搜索就...
分类:
编程语言 时间:
2014-04-29 22:06:05
阅读次数:
664
1. Modulus operator (%)The modulus operator
works on integers and yields the remainder when the first operand is divided by
the second. In Python, the...
分类:
其他好文 时间:
2014-04-29 22:00:56
阅读次数:
495
[leetcode]Word Ladder II @
Python原题地址:http://oj.leetcode.com/problems/word-ladder-ii/参考文献:http://blog.csdn.net/doc_sgl/article/details/13341405
ht...
分类:
编程语言 时间:
2014-04-29 21:42:30
阅读次数:
590
随着互联网业务对性能需求日益强烈,作为Key/Value存储的Redis具有数据类型丰富和性能表现优异的特点。如果能够熟练地驾驭它,不管是把它用做缓存还是存储,对很多大型应用都很多帮助。新浪作为世界上最大的Redis使用者,体会到了Redis为高并发在线业务带来的好处,但同时也遇到了很多挑战,新浪为...
分类:
其他好文 时间:
2014-04-29 21:36:19
阅读次数:
671
---恢复内容开始---说起lazy_object,首先想到的是django
orm中的query_set、fn.Stream这两个类。query_set只在需要数据库中的数据的时候才 产生db
hits。Stream对象只有在用到index时才会去一次次next。例子: f = Stream(.....
分类:
编程语言 时间:
2014-04-29 21:27:01
阅读次数:
676
逻辑运算符python不用&& ||
!表示与或非,用andornot,优先级是not > and > or。bool类型:True 和 False条件语句if expression1:
;elif expression2: ;else: ;字符串函数word = raw_inpu...
分类:
编程语言 时间:
2014-04-29 21:12:45
阅读次数:
492
我的MYSQL学习心得(四)我的MYSQL学习心得(一)我的MYSQL学习心得(二)我的MYSQL学习心得(三)MYSQL里的BLOB数据类型BLOB是一个二进制大对象,用来存储可变数量的数据。BLOB类型分为4种:TinyBlob、Blob、MediumBlob、LongBlob,这几个类型之间的...
分类:
数据库 时间:
2014-04-29 19:28:00
阅读次数:
558