【文件属性】:
文件名称:belsharp:Bel的实现(子集)
文件大小:20KB
文件格式:ZIP
更新时间:2021-03-19 07:54:34
F#
贝尔#
Bel# (belsharp)是F#中编程语言的子集的实现。
入门
先决条件
.NET Core 5.0
运行REPL
您可以从解决方案根目录运行REPL,如下所示:
dotnet run --project REPL/REPL.fsproj
REPL制造目标也可用。
运行测试
从解决方案根目录:
dotnet test
test目标也可用。
特征
仅实现了基本的解释器。
支持的特殊形式:
dyn :创建一个动态范围,在其中执行主体
if :有条件地分支。
lit :禁止评估,定义闭包和宏。
quote :防止评估。
set :将值绑定到符号。
支持的原语:
+ :加数字。
- :减去数字。
* :乘以数字。
car :返回列表(或对)或nil的汽车。
cdr :返回列表(或对)或nil的cdr。
do :按顺序评估表达式。
id :引用相等。
j
【文件预览】:
belsharp-master
----belsharp.sln(4KB)
----Library()
--------Lisp.fs(5KB)
--------Reader.fs(127B)
--------Parser.fs(2KB)
--------Printer.fs(3KB)
--------Library.fsproj(591B)
--------Evaluator.fs(6KB)
--------SpecialForms.fs(6KB)
--------StdLib.fs(2KB)
--------Primitives.fs(4KB)
--------Environments.fs(2KB)
----Tests()
--------Tests.fsproj(883B)
--------EndToEndTEst.fs(10KB)
--------PrimitivesTest.fs(5KB)
--------Program.fs(115B)
--------ParserTest.fs(5KB)
--------EvaluatorTest.fs(4KB)
--------PrinterTest.fs(3KB)
----LICENSE(1KB)
----README.md(1KB)
----Makefile(145B)
----REPL()
--------Program.fs(1KB)
--------REPL.fsproj(321B)
----.gitignore(279B)