首页 > 代码库 > 使用 fslex.exe 和 fsyacc.exe

使用 fslex.exe 和 fsyacc.exe

使用 fslex.exe 和 fsyacc.exe

 

在这一节,我们将学习如何使用fslex.exe 和 fsyacc.exe 两个工具,它是由 F# 提供的,用来为 F# 语言创建解析器。

 

注意

fslex.exe 和 fsyacc.exe 是以 ocamllex.exe和 ocamlyacc.exe 为基础的,它们是随 O‘Caml 发布的工具。

 

正如前一章所讨论的,创建语言可以分成两个步骤:解析用户的输入,然后,根据输入而行动。这分别被称为前端和后端,本章重点关注前端,但是,回忆一下前一章中有关抽象语法树,还是值得的,像这样:

 

module Strangelights.ExpressionParser.Ast

 

type Expr =

  |Ident of string

  |Val of System.Double

  |Multi of Expr * Expr

  |Div of Expr * Expr

  |Plus of Expr * Expr

  |Minus of Expr * Expr