微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

解析类 lisp 语言中的“Lex 组”概念

如何解决解析类 lisp 语言中的“Lex 组”概念

我有一个名为 lex函数,它基本上构建了一个扁平的令牌列表,如下所示:

(define (sq n)
    (* n n) 
)

(display (sq 4))

词法分析器生成如下内容(以可读格式):

["(","define","(","sq","n",")","*","display","4",")"]

但是,对于下一步的解析,在评估之前,我想将词法标记分组到每个全局级别的语句中。例如:

[
   # statement number one
   ["(",")"],# statement number two
    ["(",")"]

]

换句话说,我想要一个列表列表,而不是一个词法标记的平面列表,其中列表中的每个元素/列表代表一个顶级语句。有这种词法的术语吗?我必须进行词法分析的第一个函数称为 lex。第二个(get_lex_groups?)的相关解析术语是什么?我对解析很陌生,因此非常感谢这里的任何帮助/耐心:谢谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。