这个函数用来编译一段字符串的源码,结果可以生成字节码或者AST(抽像语法树),字节码可以使用函数exec()来执行,而AST可以使用eval()来继续编译。参数source是一串字符串的源码,或者是AST对象数组。参数filename是读取字符串的文件对象,如果不是从文件里读取源码来编译,那么这里可...
分类:
编程语言 时间:
2015-08-05 12:02:46
阅读次数:
272
主要思路:
(1)使用JS实现一个JS解释器
当然,似乎还没有开源的库实现?Esprima可以派上用场,将JS代码翻译为AST。(而Google V8引擎原来设计就是从AST编译为原生的机器代码,也许可以借鉴)
(2)对于非DOM/IDL的访问操作,可使用编译执行的技术,但需要提供proxy trampoline接口;
(3)对于DOM树操作或Web IDL(HTML API)访问,相当于...
分类:
Web程序 时间:
2015-07-22 13:20:54
阅读次数:
135
//1、创建常量字符串。NSString *astring = @"This is a String!";//2、创建空字符串,给予赋值。NSString *astring = [[NSString alloc] init]; astring = @"This is a String!"; [ast...
分类:
其他好文 时间:
2015-07-14 17:03:02
阅读次数:
92
开写这篇的时候,恰逢Eclpse Mars(4.5)正式发布,终于由日蚀变登火星了,也离我开始基于Eclipse开发产品已经过去10年,这10年间,经历了Eclipse由私有核心框架到拥抱OSGi, 由单一Java IDE成长为巨无霸式的技术平台,由纯桌面到Web,嵌入式全面开花,个人也经历了从普通开发者成长为committer,又离开社区的过程,唯一不变的是:Eclipse依然是我开发Java唯一的选择。...
分类:
系统相关 时间:
2015-06-30 01:25:15
阅读次数:
345
删除工作空间下的“/.metadata/.plugins/org.eclipse.core.runtime/.settings/com.genuitec.eclipse.ast.deploy.core.prefs”这个文件。在这个文件中存储了一些部署项目的信息。删了这个部署的项目的信息就没有错误了。...
分类:
Web程序 时间:
2015-06-17 23:08:57
阅读次数:
151
这应该是国内第一个关于Nim入门的系列教程 什么是Nim 我们先来引述网友 Luikore的一段话: Nim 不是函数式的, 但 Nim 支持卫生宏, 可以做 AST 重写, 可以自定编译规则, 是静态语言中的黑客语言有木有! 自定编译规则甚至...
分类:
其他好文 时间:
2015-05-15 13:27:23
阅读次数:
143
eval函数在python中做数据类型的转换还是很有用的。它的作用就是把数据还原成它本身或者是能够转化成的数据类型。那么eval和ast.literal_val()的区别是什么呢?eval在做计算前并不知道需要转化的内容是不是合法的(安全的)python数据类型。只是在调用函数的时候去计算。如果被计算的内容不是合法的python类型就会抛出异常。ast.literal则会判断需要计算的内容计算后是...
分类:
编程语言 时间:
2015-05-11 16:11:20
阅读次数:
521
root causejava.lang.NoSuchMethodError: antlr.collections.AST.getLine()I org.hibernate.hql.ast.HqlSqlWalker.generatePositionalParameter(HqlSqlWalker.ja...
分类:
编程语言 时间:
2015-05-07 12:01:01
阅读次数:
250
项目路径:http://git.oschina.net/ellipse/ASTSample/tree/howtodebug 1、先创建一个ASTTransformation package myast
import org.codehaus.groovy.ast.ASTNode
import org.codehaus.groovy.control.CompilePha...
分类:
其他好文 时间:
2015-04-30 10:59:33
阅读次数:
166