基于虎书实现LALR(1)分析并生成GLSL编译器前端(C#) 为了完美解析GLSL源码,获取其中的信息(都有哪些in/out/uniform等),我决定做个GLSL编译器的前端(以后简称编译器)。 以前我做过一个CGCompiler,能自动生成LL(1)文法的编译器代码(C#语言的)。于是我从《T ...
转载请注明来源http://www.cnblogs.com/qjkobe/p/5332612.html,谢谢。 编译原理学文法类型的时候,会出现乔姆斯基给出的四种文法类型,然而,这些概念太过于抽象了,对于初学者实在很难理解,所以,在这里,我给出一些我自己的理解,希望能对大家有所帮助。 在这之前,你必 ...
分类:
其他好文 时间:
2016-03-29 14:45:33
阅读次数:
224
在Stiny George的Shape-Talking about seeing and doing文章中,Stiny将shape designs比作“sentences”,句子由词汇,语法和句子内部关系操作组成,对于shape designs这些成分就是definited shapes, a se
分类:
其他好文 时间:
2016-03-15 12:00:08
阅读次数:
1135
匿名组合 golang也提供了继承机制,但采用组合的文法,因此称为匿名组合。与其他语言不同, golang很清晰地展示出类的内存布局是怎样的。 ? 非指针方式组合 ? 基本语法 // 基类 type Base struct { // 成员变量 } func (b *Base) 函数名(参数列表) (
分类:
其他好文 时间:
2016-03-09 17:21:59
阅读次数:
248
介绍 概念:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 应用场景:语言解释器(把我们能看懂的代码转换成了难看懂的机器码) 好处:以简单的方式使用复杂的东西。 例子 //解释器 package note.com.interpreter; /** *
分类:
其他好文 时间:
2016-03-06 12:42:36
阅读次数:
158
定义:给定一种语言,定义他的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中句子。 类型:行为类模式 类图: 解释器模式是一个比较少用的模式,本人之前也没有用过这个模式。下面我们就来一起看一下解释器模式。 解释器模式的结构 抽象解释器:声明一个所有具体表达式都要实现的抽象接口(或者抽
分类:
其他好文 时间:
2016-02-19 18:48:30
阅读次数:
117
一、模式解析 解释器模式是类的行为模式。给定一个语言之后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器。客户端可以使用这个解释器来解释这个语言中的句子。 以上是解释器模式的类图,事实上我很少附上类图,但解释器模式确实比较抽象,为了便于理解还是放了上来,此模式的要点是: 1、客户端提供一
分类:
其他好文 时间:
2016-02-16 00:04:06
阅读次数:
239
第三章:命名惯例 零贰叁. 构成标示符时要使用文法模板。 l 变量以名词命名,前面不加或再加上多个形容词: variable → [adjective _ ]* noun l hash和数组: look-variable → [adjective _ ]* noun preposition 零贰肆....
分类:
其他好文 时间:
2016-02-14 00:30:40
阅读次数:
212
实验目的 了解掌握算符优先分析的基本方法、内容;学会科学思考并解决问题,提高程序设计能力。 实验内容与要求 用算符优先分析方法设计一个分析解释程序,对输入的赋值语句、输出语句、清除语句进行词法分析、语法分析、表达式求值并存储于指定变量中;若存在错误,提示错误相关信息。 文法表示 S -> v=E |
分类:
其他好文 时间:
2016-01-30 18:21:33
阅读次数:
241