Where can I learn the basics of writing a lexer?

前端 未结 2 1104
情深已故
情深已故 2021-01-29 17:42

I want to learn how to write a lexer. My university course had an assignment where we had to write a parser (and a lexer to go along with it) but this was given to us with no in

2条回答
  •  臣服心动
    2021-01-29 18:16

    Basically there are two main approaches to writing a lexer:

    1. Creating a hand-written one in which case I recommend this small tutorial.
    2. Using some lexer generator tools such as lex. In this case, I recommend reading the tutorials to the particular tool of choice.

    Also I would like to recommend the Kaleidoscope tutorial from the LLVM documentation. It runs through the implementation of a simple language and in particular demonstrates how to write a small lexer. There is a C++ and an Objective Caml version of the tutorial.

    The classical textbook on the subject is Compilers: Principles, Techniques, and Tools also known as the Dragon Book. However this probably falls under the category of "fairly advanced write ups".

提交回复
热议问题