nex:Lexer for Go

时间:2024-06-06 03:00:33
【文件属性】:

文件名称:nex:Lexer for Go

文件大小:41KB

文件格式:ZIP

更新时间:2024-06-06 03:00:33

Go

耐克斯 Nex是类似于Lex / Flex的词法分析器,它: 生成Go代码而不是C代码 与Go的yacc集成,而不是YACC / Bison 支持UTF-8 支持嵌套结构正则表达式。 请参见Rob Pike的。 我编写此代码是为了熟悉Go并探索本文中的一些想法。 而且,我一直很想实现我从多年前的编译器课程中学到的算法。 那时,我们从未对它们进行编码。 仅了解理论就足以通过考试。 Go具有不太通用的,但是它特别适合于标记Go代码。 安装 $ export GOPATH=/tmp/go $ go get github.com/blynn/nex 例子 是一个扫描器,它可以计算字符和行数。 该程序在Nex中类似: /\n/{ nLines++; nChars++ } /./{ nChars++ } // package main import ("fmt";"os") func ma


【文件预览】:
nex-master
----tacky()
--------build.sh(238B)
--------tacky.nex(644B)
--------tacky.y(1KB)
--------tacky_test.go(3KB)
--------README(1KB)
--------tacky.go(5KB)
----main.go(2KB)
----COPYING(34KB)
----nex_test.go(411B)
----test()
--------rob.nex(294B)
--------wc.nex(290B)
--------nex_test.go(10KB)
--------peter2.nex(252B)
--------rp.nex(226B)
--------peter.nex(160B)
--------bug50.nex(395B)
--------lc.nex(189B)
--------rp.y(468B)
--------toy.nex(855B)
--------peter.txt(213B)
--------u.nex(962B)
----Makefile(284B)
----README.asciidoc(13KB)
----nex.go(27KB)

网友评论