【发布时间】:2016-07-21 18:42:17
【问题描述】:
我目前正在学习 Common LISP,但遇到了巨大的障碍。 我有一个任务是学习如何在 Common LISP 中创建解析器。在网上不同来源的大量帮助下,我设法实现了从语法规则到词法分析器的所有内容。另一方面,我似乎无法弄清楚如何实现符号表。
这是我迄今为止关于符号表的内容。
(defun symtab-add (state id)
;; *** add symbols to symbol table ***
)
(defun symtab-member (state id)
;; *** look up symbols in symbol table ***
)
(defun symtab-display (state)
(format t "------------------------------------------------------~%")
(format t "Symbol Table is: ~S ~%" (pstate-symtab state))
(format t "------------------------------------------------------~%")
)
如您所见,我只使用显示部分进行管理,如果有人可以链接我一个教程或给我一个代码示例或只是帮助我解决这个问题,我将非常感激。
我的作业的所有源代码:http://www.cs.kau.se/cs/education/courses/dvgc01/LISP/newstart.lsp
【问题讨论】:
-
"如何在 Common LISP 中模拟符号表" 1) 是“Common Lisp”,不是“Common LISP”(不用喊)。 2)正如 Rainer 指出的那样,该代码是从其他地方获取的。您应该为您发布的代码提供归属,并且当然不应该声称它是您自己的。 3) 为什么要“模拟”符号表?你不想实现一个吗?这个措辞表明无法在 Common Lisp 中实现符号表,这很愚蠢。
-
是的,这确实是我的任务,如果不清楚,我很抱歉。好的,所以我想实现一个符号表(任务是解析一个简单的帕斯卡程序)。你能给我一些指示或指出我正确的方向吗?正如您从链接中看到的那样,您发送了未完成的代码。完成它是我的任务。除了符号表,一切都完成了。
标签: parsing common-lisp lexer clisp symbol-table