Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
开发类似 python 的小型语言时的缩进控制
我正在使用 flex byacc 用于词法和解析 和 C 开发一种类似 python 的小型语言 但我有一些关于范围控制的问题 就像 python 一样 它使用空格 或制表符 进行缩进 不仅如此 我还想实现索引中断 例如 如果您在另一个 w
c
yacc
Lex
compilertheory
解析树和抽象语法树(AST)有什么区别?
它们是由编译过程的不同阶段生成的吗 或者它们只是同一事物的不同名称 这是基于表达评估器 http www antlr3 org works help tutorial calculator html泰伦斯 帕尔的语法 本例的语法 gramm
显式空检查与空合并运算符的编译器评估?
考虑下面的代码 它使用了两个slightly不同的检查方法 instance并在尚未设置时分配它 class InstantiationTest private Object instance public void Method1 if
c
compilerconstruction
clr
CIL
compilertheory
我正在尝试使用 System.Reflection.Emit 编写 .NET 编译器,如何进行类型解析?
我有一个从引用的 dll 解析类型的策略 我一直在尝试解析正在编译的程序集中定义的类型 我使用的是 System Reflection Emit api 没有第三方库 例如 class A class B public A AnInstan
NET
compilerconstruction
reflectionemit
compilertheory
为什么编译器不能完全解决死代码检测问题?
我在 C 或 Java 中使用的编译器具有死代码预防功能 当一行永远不会被执行时发出警告 我的教授说编译器永远无法完全解决这个问题 我想知道这是为什么 我不太熟悉编译器的实际编码 因为这是一个基于理论的课程 但我想知道他们检查什么 例如可能
compilertheory
装配性能调整
我正在编写一个编译器 更多的是为了好玩 但我想尝试使其尽可能高效 例如 我被告知在英特尔架构上使用除EAX执行数学运算会产生成本 大概是因为它交换为EAX进行实际的数学计算 这里至少有一个来源说明了这种可能性 http www swanso
c
compilerconstruction
Assembly
compilertheory
现代和旧的编译器是用什么编写的?
作为编译器 而不是解释器 只需要翻译输入而不运行它 其本身的性能应该不会像解释器那样有问题 因此 您不会用 Ruby 或 PHP 编写解释器 因为它太慢了 但是 编译器呢 如果您用脚本语言编写一个编译器 甚至可能具有快速开发的特点 您可能会
compilerconstruction
scriptinglanguage
compilertheory
删除 ANTLR 中的左递归
正如中所解释的删除左递归 https stackoverflow com questions 2652060 removing left recursion 有两种方法可以去除左递归 使用某些程序修改原始语法以删除左递归 本来写语法就没有左
ANTLR
compilertheory
函数式语言编译器相对于命令式语言编译器的优势
作为这个问题的后续与 C 相比 F 的内置不变性有哪些优点 https stackoverflow com questions 2194201 what are the advantages of built in immutability
c
F
functionalprogramming
compilertheory
GCC的通行证和调用的程序是什么?
它出现在另一个问题 调用了哪些程序和部分gcc 特别是编译时C or C 以便有人可以设计一些拦截和更改流程以用于各种自定义编码目的的方案 编译器二进制文件是 编译器驱动程序 即gcc 以及编译器本身 它也兼作预处理器 cc1 or cc1
gcc
codegeneration
compilertheory
Scala“<-”用于理解
我发现 Scala 总是对任何事情都有 自然的解释 总是类似 哦 但这只是用这个和那个参数在这个和那个对象上调用的函数 从某种意义上说 没有什么是真正像我们从其他语言中了解到的那样具有编译器魔力 我的问题是关于 lt 运算符如以下代码中所使
scala
loops
compilertheory
forcomprehension