Scheme:処理系依存構文
いくつかのScheme処理系で使われている拡張構文をまとめてみる。 基本的にはマニュアルから拾ったもの。
(これはかなり古い情報です。新たに情報を追加したければ、 Scheme Cross Referenceの方に書いてもらえると有難いです。)
モジュール
- Scheme48, scsh
define-structure, define-interface
- STklos, Gauche
define-module, import, export
- Chez Scheme
module, import
- Chicken
define-module, import (upper compatible w/ Gauche's), export, import-excluding, files
- Guile
define-module (syntax differs from Gauche's), use-modules, export
制御
- STklos, Gauche, Chez Scheme, Chicken
when, unless
- SCM
qase
繰り返し
- Scheme48, scsh
iterate, reduce
- Guile
while
- Chez Scheme
ormap, andmap
ブロック
束縛
動的束縛
- Scheme48, scsh
fluid, let-fluid, let-fluids
- STklos, Chez Scheme, Chicken
fluid-let
- Gambit
dynamic-define, dynamic-ref, dynamic-set!, dynamic-let
- Guile
make-fluid, fluid-set!, fluid-ref, with-fluids*
他
- Chez Scheme
case-lambda, rec, record-case
- Chicken
case-lambda, let-optionals, record-case (differs from Chez's)
- Guile
let-optional, lambda*, define*
定数
- SCM
defconst
- Chicken
define-constant
脱出
- Gauche
with-error-handler, with-signal-handlers