識別子の命名規約


Tag: R6RS

R6RS に挙げられているもの

procedure!

代入を行なうものや、引数として与えられたオブジェクトを変更する可能性のある手続き。

pred?

述語(真偽値のみを返す手続き)。

type1->type2

ある型から他の型への変換を行なう手続きには 変換前の型->変換後の型 という名前をつける。

&condition

コンディション型の名前。

an-identifier

識別子内の単語は `-' で区切る。ただし、 `-' に続く字が記号や数字の場合は `-' をつけない。また、短かくかつ発音のできない接頭辞の後にも `-' をつけない(例: ○ fxdiv × fx-div)。

_ (syntax-rules, syntax-case 等のパターン内)

パターン変数を束縛しないパターン。

※厳密に言うと、これは命名規約ではなく、これらの構文における規則である。

慣習としてよく使われるもの

%procedure

内部手続きや補助手続き。

*variable*

トップレベル変数。

name*

name の変種など。

namespace:name

名前空間接頭辞。 import の prefix 節でつける接頭辞は `:' で終えることが多い。

例:

(import (rnrs) (prefix (only (srfi :1) map) srfi-1:))

_ (手続きの仮引数)

使用しない引数。ただし、同一の仮引数名を二度使うことはできないことに注意。

例:

(define (constantly x)
  (lambda _ x))

?name, NAME

syntax-rules / syntax-case のパターン変数。 ?name は Dylan 由来、 NAME は Prolog 由来か。

<class-name>

Tiny CLOS 風のオブジェクトシステムにおけるクラス名。