文件名称:minml:一种编程语言
文件大小:152KB
文件格式:ZIP
更新时间:2024-06-19 06:04:33
JavaScript
最小 一个编程语言实验,探索一种强大的、静态类型语言的想法,它不需要任何显式的类型注释。 和。 目前只实现了一个基本的范围检查器,但语义是为简单的 ML 风格的 HM 设计的,加上和。 关于这可能如何工作的许多细节仍未决定 - 例如如何推断参数多态性(我对的方法感兴趣,因为它可能通过语法而不是显式类型提供一些灵活性)。 编译器支持 Javascript 后端,并且已经过引导(例如,minml 编译器的源代码是用 minml 编写的),但如果类型语义已经形式化,则应该可以直接为 WASM 重新实现。 教程 minml在语法上来自SML / OCAML / Haskell / F#系列,并以函数式程序员应该熟悉的方式支持简单的let绑定,一流的功能和简单的module /命名空间系统。 它是空格重要的 ala Haskell 和 F# #light语法。 变量是不可变的,通过let引入
【文件预览】:
minml-main
----language-configuration.json(823B)
----package.json(2KB)
----LICENSE(1KB)
----src()
--------sys.minml(1KB)
--------ref.minml(146B)
--------pprint.minml(2KB)
--------array.minml(3KB)
--------macro.minml(737B)
--------index.minml(4KB)
--------parsec.minml(10KB)
--------ast.minml(15KB)
--------tetris.minml(12KB)
--------test.minml(5KB)
--------set.minml(298B)
--------str.minml(2KB)
--------term.minml(301B)
--------seq.minml(521B)
--------core.minml(4KB)
--------compiler.minml(18KB)
--------map.minml(392B)
--------typecheck.minml(16KB)
--------scope.minml(1KB)
----.gitignore(14B)
----webpack.config.js(579B)
----.circleci()
--------config.yml(342B)
----README.md(5KB)
----yarn.lock(291KB)
----minml.tmLanguage.json(19KB)
----.vscodeignore(66B)
----.vscode()
--------launch.json(540B)