文件名称:dpl-403:Lusth 博士的 CS403 课程的设计器编程语言项目
文件大小:43KB
文件格式:ZIP
更新时间:2024-07-17 01:38:06
C
DPL 403 这最初是我为 Lusth 博士的 CS 403 课程设计的设计语言项目。 我希望继续完善和扩展它。 我的语言还没有名字,因为我还没有想出一些聪明的东西的动机。 我认为它最像 Scheme,除了更特殊的语法(而且功能几乎没有那么多),但它在 Lusth 博士的语言之后也很重要,我开发了交错函数调用的想法(稍后会详细介绍) ) 来自 AppleScript 中的类似概念。 该程序 语言程序是(感谢 Lusth 博士)一个相对简单的系统,主要是独立的层。 词法分析器和词位 基础是词法分析器( lexer.c ),它接受输入文件并将其中的源代码逐个标记地转换为词素。 词素本身 ( lexeme.c ) 只是 C 结构体,代表我的语言为了运行而需要了解的各种对象。 词素的类型是在 types 模块 ( types.c ) 中定义的字符串常量。 解析器和解析树 解析器 ( pars
【文件预览】:
dpl-403-master
----runner.c(2KB)
----evaluator.c(7KB)
----environment.h(704B)
----function-evaluator.c(10KB)
----types.h(1KB)
----environment.c(7KB)
----lexer.c(15KB)
----loader.c(5KB)
----function-evaluator.h(234B)
----built-ins.h(6KB)
----README.md(4KB)
----built-in-types.h(2KB)
----built-ins.c(39KB)
----evaluator.h(253B)
----parser.c(13KB)
----parser.h(165B)
----trees.c(10KB)
----grammar.txt(8KB)
----makefile(1KB)
----loader.h(243B)
----lexeme.c(9KB)
----readme.txt(7KB)
----trees.h(3KB)
----lexer.h(716B)
----lexeme.h(3KB)
----types.c(2KB)
----built-in-types.c(3KB)