Gambit (Scheme实现)
外观
编程范型 | 多范型: 函数式, 指令式, 元编程 |
---|---|
语言家族 | Lisp/Scheme |
设计者 | Marc Feeley |
发行时间 | 1988年 |
当前版本 |
|
型态系统 | 动态, 潜在, 强类型 |
作用域 | 词法 |
系统平台 | IA-32, x86-64 |
操作系统 | 跨平台 |
许可证 | LGPL 2.1, Apache 2.0 |
网站 | http://gambitscheme.org/ |
启发语言 | |
Lisp, Scheme | |
影响语言 | |
Gerbil Scheme, Termite Scheme |
Gambit也叫做Gambit-C,是Lisp编程语言家族的Scheme方言一个实现。Gambit实现包括一个Scheme解释器,和将Scheme编译成C的编译器,这使得它成为了跨平台软件。它遵循了标准R4RS、IEEE 1178和R5RS,和一些Scheme实现要求(SRFI)[3]。Gambit最初在1988年发行,而Gambit-C(具有C后端的Gambit)最初在1994年发行。它们是在GNU宽通用公共许可证(LGPL) 2.1和Apache许可证 2.0下发行的自由及开放源代码软件。
通过编译成中间表示,这里采用了可移植的C语言代码(Chicken、Bigloo和Cyclone亦如此),用Gambit书写的程序可以编译于常见的流行操作系统,比如Linux、macOS、其他类Unix系统和Windows。
Gerbil Scheme
[编辑]Gerbil scheme是在Gambit-C上实现的Scheme变体。它支持当前的R*RS标准和常见的SRFI,并且拥有受Racket语言启发的先进的宏和模块系统[4]。
Termite Scheme
[编辑]Termite Scheme是在Gambit-C上实现的Scheme变体。Termite意图用于分布式计算[5],它提供受Erlang语言启发的一个简单而强力的并发性的消息传递模型。
C++和Objective-C集成
[编辑]尽管Gambit编译器只产生C代码,它支持完全集成于C++和Objective-C编译器,比如GCC。因此,用Gambit-C写成的软件可以包含C++或Objective-C代码,并可以完全集成于相应的库。
参见
[编辑]引用
[编辑]- ^ Release 4.9.5. 2023年7月26日 [2023年8月3日].
- ^ Gambit Scheme - Gambit 4.9.4. [1]. [2022-10-25]. (原始内容存档于2022-05-27).
- ^ Documentation. Gambit wiki. [2010-03-06]. (原始内容存档于2021-02-26).
- ^ Dimitris Vyzovitis. Lightning Talk: Gerbil on Gambit, as they say Racket on Chez. Oxford, England: YouTube. 2017-12-11 [2019-03-08]. (原始内容存档于2021-11-09) (英语).
- ^ Germain, Guillaume; Monnier, Stefan; Feeley, Marc. Concurrency oriented programming in Termite Scheme (PDF). Scheme and Functional Programming 2006. Scheme and Functional Programming 2006. Portland, Oregon. 2006-09-17 [2019-03-08]. (原始内容 (PDF)存档于2021-09-20).