本文探讨了 Raku 语言的核心,从其标准库开始,逐步深入到语言的各个层次,最终到达核心的KnowHOW
。
- 核心探索之旅:从开始写 Raku 程序,到逐步深入到 Raku 的核心,包括
CORE
、编写CORE
的语言、目标语义模型、实现语义模型的高级语言、低级后端以及核心的KnowHOW
等七个部分。 - Raku 的
CORE
:CORE
是包含print
等函数和+
等运算符的符号表,但它不是所寻求的核心。通过一些代码示例可以查看print
函数和+
运算符的源代码所在位置。 - 编写
CORE
的语言:Raku 的CORE
实际上是由更简单的“核心”语言编写的,这种“核心”语言是由相互嵌入的更简单子语言组成的“辫子”,用户代码可以替换、修改这些子语言。 - 目标语义模型:Raku 目标是一个单一的语义模型,通过询问“Apocalypse #1 中引入的‘语义模型’是什么?”引出相关讨论,最终确定继续探索的方向是 nqp。
- 实现语义模型的高级语言:所有 Raku 方言都编译为单一语义模型,部分使用纯 Raku,部分使用 nqp 编写的代码。nqp 是 Raku 的子集,专注于构建和编译编程语言。
- 低级后端:MoarVM 是 Raku 的低级后端,直接在硬件上实现 Raku 的单一语义模型,它从一个包含相关代码的单一数据结构启动。
- 核心的
KnowHOW
:KnowHOW
是 Raku 的核心原语,是一个自描述的单例数据结构,结合了数据/状态和代码/行为,通过一系列的钻取操作可以到达KnowHOW
,它是 Raku 所有内容的基础。
总之,Raku 的核心是KnowHOW
,它是 Raku 语言及其实现的基础,从语言的各个层次都可以追溯到这个核心。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。