#expr

2020-12-4 20:52
计算器是解析器的世界。这是Reparse中的一种实现,支持+,-,*和/。 模块P =重新解析。解析器打开P.Infix类型expr = | int int | expr * expr的加|子expr * expr |多个expr * expr | expr的Div * expr let skip_spaces =......
2020-11-9 14:14
Scala的一个优点是实现编程语言。即使您的目标不是实现一种全新的编程语言,这些技术仍然很有用:用于编写内存、程序分析器、查询引擎和其他类似工具。这篇博客文章将带您完成用Scala实现简单编程语言的过程,介绍一些基本概念,最后介绍一个简单编程语言的可用解释器。 关于作者:Haoyi是一名软件工程师,也是许多开源Sca......
2020-7-19 10:50
我会试着告诉你这有多简单。第一部分很有理论性,所以要有耐心。 CUCU是玩具语言的玩具编译器。我希望它尽可能接近ANSI CA,这样每个有效的CUCU程序都可以用C编译器编译,没有任何错误。当然,整个ANSI C标准的支持非常困难,所以我选择了一个非常小的C语言子集。 Int cucu_strlen(char*s){......