跳到主要内容

· 阅读需 12 分钟

在编译过程中,语法分析(也称为解析,Parsing)是一个关键步骤。解析器(Parser)的主要职责是将Token流转换成抽象语法树(AST)。本文将介绍一种解析器的实现算法:Pratt解析器(Pratt Parsing), 是一种自顶向下的语法分析器(Top Down Operator Precedence Parsing),并展示如何用MoonBit来实现它。

在编译过程中,语法分析(也称为解析,Parsing)是一个关键步骤。解析器(Parser)的主要职责是将Token流转换成抽象语法树(AST)。本文将介绍一种解析器的实现算法:Pratt解析(Pratt Parsing),也称为自顶向下的运算符优先级解析(Top Down Operator Precedence Parsing),并展示如何用MoonBit来实现它。

本处给出的完整代码例子中便有关于前缀运算符的处理: try.moonbitlang.cn/#99b19baf

· 阅读需 7 分钟

People who grew up in the '80s and '90s remember Tetris. For decades, the game has challenged our hand-eye coordination and ability to make snap decisions. Tetris hasn't gone anywhere—it's still around, playable on just about any device.

Last week, a MoonBit user named Luoxuwei shared his Tetris implementation code using MoonBit on GitHub, presenting an interesting coding exercise. Today, we'll utilize Luoxuwei's code as a practical example to illustrate how to program Tetris using MoonBit.

· 阅读需 10 分钟

距离我们在海外正式推出公测已有两周,在这两周中,我们看到不少的用户开始跃跃欲试,用Moonbit做各种项目的尝试。其中就有这样一位用户,他是来自知名公司GreenLabs的工程师Woonki,他在Twitter上分享了自己最新的尝试:使用Moonbit重新构建经典的生命游戏,同时在构建生命游戏中,Moonbit卓越的编译速度也让他大开眼界。