问题标签 [fslex]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
f# - lex/yacc 和 fslex/fsyacc 有什么区别?
我正在学习 F#,因为我想编写一个词法分析器和解析器。我对这种处理有一点经验,但真的需要像 F# 一样正确地学习它。
在学习 F# 的词法/解析功能时,学习 lex 和 yacc 是否足够?
或者是否有一些差异意味着 lex/yacc 的代码不适用于 fslex 和 fsyacc?
visual-studio - FSLex 示例解决方案?
我已经使用 C/lex 很长时间了,现在想使用 F#/fslex。我在 C# 和学习 F# 的过程中相当不错。唯一的问题是我看不到任何项目示例或模板,其中 fslex 正确包含在 Visual Studio 构建过程中。有谁知道我在哪里可以找到一个?
很多问候!沃尔克
f# - 期待 LexBuffer但给定一个 LexBuffer“char”类型与“byte”类型不匹配
类型不匹配。期望 a
LexBuffer<char>
但给定 aLexBuffer<byte>
类型 'char' 与类型 'byte' 不匹配
这是我在使用 fslex 时收到的错误消息。我已经尝试手动检查每一次出现的 lexbuf 及其类型。它LexBuffer<char>
无处不在。但是编译器仍然给我上述错误。你能告诉我为什么会发生这个错误以及如何解决它。
f# - F# 2.0 与 Powerpack 2.0,fslex 错误 1
在命名空间 RSLispV3.RunTime: http ://pastebin.com/XNb9qi11
LispParser.fsy: http ://pastebin.com/pymF1Vvm
LispLexer.fsl: http ://pastebin.com/pfXdDuxs
我进入 MSBuild 的 PowerPacks 目标,从 .fsprog 调用它们。
使用 VS2008 构建时出现错误:“fslex.exe”以代码 1 退出。
帮助?
f# - FsLex 和 FsYacc 的疯狂错误
我正在尝试编译这个项目:
但是我得到了一堆无意义的错误。他们得到了我熟悉的文本,但在这个位置上没有类似的东西(比如空行中的意外')')。
请帮帮我!
f# - FsLex 更改为最新的 PowerPack?
我一直在研究编译器,但在更改为 PowerPack 1.9.9.9 和 VS2010 的发布版本后,我无法编译以下行:
让 lexbuf = Lexing.from_string 文本
我收到以下两个错误:
“未定义值、构造函数、命名空间或类型'from_string'”非常明显,它试图告诉我什么,但解决方案是什么?
f# - FSLex 未知错误
我的 FSLex 遇到了一些我无法解决的问题...我所知道的是 fslex.exe 以代码 1 退出...
顶部的 F# 代码在 F# Interactive 中进行了测试,因此不存在问题(我不知道如何解决)。
词法分析器:http : //pastebin.com/qnDnUh59
和 Parser.fsi: http ://pastebin.com/sGyLqZbN
谢谢,拉蒙。
f# - fslex 中的 Lua 长字符串
我在业余时间一直在研究 Lua fslex 词法分析器,使用 ocamllex 手册作为参考。
我在尝试正确标记长字符串时遇到了一些障碍。“长字符串”由'[' ('=')* '['
和']' ('=')* ']'
标记分隔;标志的数量=
必须相同。
在第一个实现中,词法分析器似乎无法识别[[
模式,LBRACKET
尽管最长匹配规则产生了两个标记,而[=[
正确识别出变化。此外,正则表达式无法确保使用正确的结束标记,在第一次']' ('=')* ']'
捕获时停止,无论实际的长字符串“级别”如何。此外,fslex 似乎不支持正则表达式中的“as”结构。
我一直在尝试用词法分析器中的另一条规则来解决这个问题:
但是我被卡住了,有两个原因:首先,我认为我不能“推动”,可以说,一旦我读完长字符串,我就不能“推动”下一条规则;其次,我不喜欢在找到正确的结束标记之前逐个字符地读取字符的想法,这使得当前的设计毫无用处。
如何在 fslex 中标记 Lua 长字符串?谢谢阅读。
function - F# 内联函数特化
我当前的项目涉及词法分析和解析脚本代码,因此我正在使用 fslex 和 fsyacc。Fslex LexBuffers 可以有两种形式LexBuffer<char>
,LexBuffer<byte>
我希望可以选择同时使用这两种方法。
为了同时使用两者,我需要一个 ^buf -> 字符串类型的词位函数。到目前为止,我的专业化尝试看起来像:
我收到一个类型错误,指出函数体应该是 type ^buf -> string
,但推断的类型是 just string
。显然,我做错了什么(主要是?)。
我正在尝试在 F# 中甚至可能吗?如果是这样,有人可以指出我正确的路径吗?
谢谢!
regex - 如何在 fslex 的模式中指定 unicode 字符
在 FSharp Lexer 的模式中指定 Unicode 字符的正确方法是什么。以下代码未使用 FsLex.exe 实用程序编译:
我做错了什么?
PS:我正在使用带有 --unicode 选项的 fslex.exe
谢谢, 维塔利