Kairos 言語仕様 — 6. 用語集
仕様を読むときに引くための索引。各項目は〈用語|一行定義|参照〉。命名の確定状況は §5.4——
全語が正式名・仮称は残っていない(F51 の一括確定〈2026-07-09〉と最後の rephase 裁定
〈2026-07-26・旧仮称 shiftBoundary・CHANGELOG 追補 11〉で完了・供給の対は sessionOpens/sessionCloses に改名)。参照の「§」は本仕様の章、stdlib/… は
標準 premise 解説を指す。
6.1 層・型・全体構造
| 用語 |
定義 |
参照 |
| Kairos |
本言語。連続基底 Chronos から発報すべき意味ある時点(kairos)の集合を紡ぐスケジュール定義言語 |
§1.1 |
| Chronos |
TZ 非依存の単一絶対連続時間軸=基底。うるう秒を持たない一様な理想化尺度(UTC の各日=86,400 秒)。全暦法・粒度はここへの射影で、相対化しない。字句名は chronos(ADR-29/33) |
§1.3・§2.2 |
TZ(tz:) |
TZ=chronos から市民座標(壁時計ラベル)への版付き写像。tz: はその名前を与える premise の文脈値(I6・宣言必須寄り・利用時に発火)。値は IANA 地域識別子・固定オフセット(厳格一意形 "±HH:MM" のみ=ADR-43)・"UTC"。隙間・重複に落ちる時刻リテラルはエラー(ADR-33) |
§3.2・§3.3・§3.6・§5.5 |
| kairos |
基底 Chronos 上で選ばれた「発報すべき意味ある時点」。言語の出力(時間ストリームの各点) |
§1.1 |
| premise 層 |
暦法・カレンダーを組み立てて供給する層(DDL 的・宣言的・多行可) |
§2.1・§3 |
| 本体層 |
供給された語彙でスケジュールを紡ぐ層(DML 的・パイプ的・一行志向) |
§2.1・§4 |
| 時間ストリーム型 |
遅延・無限・順序付きの、基底上の点の列。本体層の第一級値=外延 |
§2.2 |
| premise 型 |
暦法などの生成規則そのもの=内包。原始/派生があり premise → premise 閉包 |
§2.2 |
| 値型 |
数値・論理・列挙・リスト・文字列(ADR-32)・時点(ADR-43=裸の値束縛も合法)。閏判定や shift(n) の n で使う第三の型 |
§2.2・§3.5 |
| ラムダ(無名関数) |
その場で渡す名前のない関数。引数 => 式(矢印 => は型記法 -> と区別) |
§3.5 |
| 高階関数 |
関数を引数に取る演算子。filter・span・split が該当(cycle はリストを取る) |
§3.5 |
| 述語 |
真偽を返すラムダ。filter が premise 述語(on:)と値式述語(ラムダ)の両方を取る |
§3.5・§4.6 |
| 外延 / 内包 |
外延=生成された点の列(時間ストリーム)、内包=生成規則(premise) |
§2.2 |
| 評価註釈(範囲外) |
結果に並走する註釈区間の列〔[a,b)・種・源・covering・asof〕。種は当面「範囲外」(out-of-coverage)=結果が被覆域外のデータに依存し得る区間。空でない結果にも付く。註釈なしは正当性の証明ではない |
§4.10・ADR-15/37 |
| 実効被覆域 |
参照が実際に読む束縛の、輸送表で計算された確定域(=註釈区間の補集合)。エラーの分類器(範囲外か取り違えか)の基準——生テーブルの covering ではない |
§4.10・ADR-37 |
| 被覆主張 |
束縛後置の covering:=「この合成はこの範囲で完全」の検証不能な明示主張(相殺の唯一の口・source/asof と同格の統治) |
§3.8・ADR-37 |
| 被覆サマリ / 残走路 |
評価が参照した各データ源の〔源・covering・asof・完結主張・評価 to からの残り日数(残走路)〕。クリップしない監視用の器(註釈と別) |
§4.10・ADR-37 |
| 閉包 |
全演算子が (ストリーム…, premise) → ストリーム。導いた結果をさらに入力にできる |
§2.3 |
| core 族 |
本体層の最小・厳密な演算子集合(生成子・点変換・結合子・フィルタ・窓・選択子・ストライド) |
§2.4・§4 |
| 糖衣 |
core 合成に名を付けた略記。core への展開で消せる(片方向依存) |
§2.4・§4.8 |
| 原始的定義 |
派生元を持たない暦法の根(Gregorian 等)。基底から窓を刻む |
§3.6・stdlib/gregorian.md |
| 派生的定義 |
既存 premise を上書きして作る暦法(会計暦等)。premise → premise 閉包 |
§3.7 |
6.2 premise と構成要素
| 用語 |
定義 |
参照 |
| premise(前提) |
式の解釈が成立するための先行条件の総称。契約の前文(recitals)に同型 |
§3.1 |
| 前文 |
本体式の前に premise を据える宣言。定義 premise 名 {…}/軽量 @名前/完全形 |
§3.2 |
| 暦法(calendar-system) |
基底上の窓分割定義の集合。何が「月」かを定める。Gregorian もその一つ |
§3.6 |
| カレンダー(calendar) |
名前で参照する営業日カレンダー(週末→祝日→組織休日のカスケード)。asof で版が決まる |
表§3.3 |
| カレンダー実体 |
calendar: に立てる premise。公開語 nonWorking を持ち tz: を宣言することが正体判定の要件(ADR-35) |
§3.9 |
nonWorking |
カレンダー実体の予約公開語(時間ストリーム型・引数なし・実体 tz の day 整列)。非稼働集合=カスケード合成の結果を束ねる |
§3.9 |
bizDay(標準導出) |
言語が一律に規定する導出糖衣 everyDay \ C.nonWorking(C=在圏 calendar:)。calendar: 在圏では言語予約の導出名(手動束縛は静的エラー)。軸位置の premise 名(on: TSE)はこの導出への読み替え。利用側相対(読み手の日々から引く軸) |
§3.9 |
sessionOpens/sessionCloses |
実体の対の予約公開語=開場列・閉場列(営業時間の供給規約・任意宣言)。点は実体 tz の市民座標(壁時計)の事実。セッション=半開区間の和・整合性検査は局所交互+結合実効被覆域 |
§3.9.1 |
bizOpen/bizClose/isOpen(標準導出) |
営業セッションの開場列・閉場列・所属述語。実体相対(判定材料は実体の文化=実体の tz と休日で解決。bizDay の利用側相対と役割が違う)。営業日性は開場日で読む |
§3.9.1 |
| 軸(axis) |
操作が数える単位(bizDay/day/hour…)。on:/unit: が名指し、在圏 calendar に解決。基底 chronos とは別概念(ADR-29) |
§3.3 |
| ロール規約(roll) |
無効点を有効点へ寄せる規約(Following/Preceding/Modified)。軸非依存 |
§4.4・§6.6 |
| 粒度(granularity) |
年月日時分秒週四半期…。軸上の位置の表示射影。型には乗せない |
§2.2 |
| 幅(規約) |
オフセットの長さ。経過時間/市民時+ロールの規約集合。grid の 1d は市民日(86400s=経過時間ではない) |
stdlib/gregorian.md§1・ADR-11/12 |
| WKST |
週がどこで始まるか(週窓の切れ目・「第 N 週」の起点)。文化依存の premise メンバー |
§3.3・stdlib/gregorian.md§4 |
| asof |
カレンダー版を決める時間版。省略時は評価時点 |
表§3.3 |
| 出所(source) |
データの権威(公式/組織ローカル)。asof と並ぶ premise |
表§3.3 |
| 名前解決(premise 相対) |
名前は在圏 premise の下で解決。曖昧なら Gregorian.month と修飾 |
§3.4 |
| スコープ既定(畳み込み) |
axis:/roll: を前文に一度宣言し省略段が継承。最内優先(既定→評価文脈→ブロック→段) |
§3.3 |
| 機構 A |
派生の名前解決=裸名は派生スコープで再解決(依存語が自動追従)・Base.word は base 値にピン |
§3.7 |
6.3 暦法と窓(premise 層の窓生成語)
| 用語 |
定義 |
参照 |
| 窓(Window) |
期間で束ねた部分ストリーム。パーティション型と区間列型の二種 |
§2.6(I5)・§4.2 |
| パーティション型窓 |
軸を余さず分割する窓。網羅・無重複が検査可能(I5) |
§4.2 |
| 区間列型窓 |
マーカーで切る窓。網羅は保証されず隙間ポリシーを明示 |
§4.2 |
| 窓生成語 |
原始的定義が基底を窓へ刻む語。grid/span/split/cycle |
§3.6 |
chronos(裸名) |
連続基底 Chronos を参照する字句名(day = chronos grid 1d)。唯一 grid だけが受け取る。操作軸 axis: とは別概念(ADR-29) |
§3.6・§1.3 |
grid(w) |
連続軸を幅 w で一様分割(暦の原子)。例 day = chronos grid 1d。位相は既定整列(市民時幅=各市民日の開始瞬間〈通常日は tz 真夜中〉・経過時間幅=紀元)・anchor: で上書き(ADR-31) |
§3.6 |
紀元(epoch:) |
span の窓序数・epochOrdinal の起点。言語既定 1970-01-01T00:00(在圏 tz=tz が違えば chronos 上の別の点。ADR-33)・原始的定義のメンバー epoch: で上書き可(前文には置けない)。序数は 0 起点・紀元以前は負 |
§3.6・ADR-31 |
span(f) |
細かい単位を可変/定数個束ねる(ボトムアップ集約)。f=n=>個数 |
§3.6 |
split(g) by: u |
親窓を単位 u の可変幅で割る(トップダウン)。従属窓に使う |
§3.6 |
cycle(labels) anchor: |
パーティション窓に反復ラベルを付す。窓でなくラベル。周期長・適用先は任意(year cycle 可)。anchor: は属する対象窓が先頭ラベル。束縛名は点→ラベルの値関数として読める |
§3.6・stdlib/gregorian.md§4・ADR-27 |
week 窓 |
WKST 位相の 7 日並列窓。wkst: を遅延解決する Gregorian 公開語。パーティション性は I5 検査で認定 |
§3.6・stdlib/gregorian.md§4.5 |
| テーブルリテラル |
時点リストの時間ストリーム定数への昇格([2026-03-20, …])。昇順必須・出所統治・covering: で有効範囲。labels: で並行ラベル列(点→ラベル射影の定義)。空形 [] covering: … は covering 明示必須(「点ゼロだが覆域は主張したい」の一次形・ADR-45) |
§3.8・ADR-26/30/45 |
external |
外部供給宣言=実行時に解決されるテーブルリテラル。premise 束縛の右辺(先頭)限定。kind:=整列の主張(dates/instants・空でも宣言どおり)・labels:=値域の列挙・covering/asof は解決値が必ず運ぶ(供給契約)。解決は評価文脈の随伴(一評価一解決・要求駆動)・失敗は供給エラー(機械可読な部分類) |
§3.8・ADR-46 |
| 公開語 |
premise ブロック top-level の束縛。. で参照(Gregorian.month) |
§3.6 |
| 公開境界語 |
境界を選択子の再利用で導く公開語(monthEnd = month |> last)。生成子の正体 |
§3.6 |
with |
派生の core。base の公開語を上書き/追加(Fiscal = Gregorian with {…}) |
§3.7 |
rephase |
窓 W の切れ目を単位 U で δ ずらす派生糖衣(再位相)。span 位相ずらしへ展開 |
§3.7 |
| phase |
span/split の位相起点(会計暦の 4 月始まり等) |
§3.7 |
6.4 本体層の演算子族
| 用語 |
定義 |
参照 |
| 生成子 |
() → ストリーム。暦法純粋でカレンダー非依存(everyDay・everyInstant・公開境界語・テーブルリテラル) |
§4.2・I8 |
窓 within(w) |
パーティション型窓。w は窓名(month/week/…) |
§4.2 |
窓 segmentBy(m, edges:, empties:) |
区間列型窓。隙間ポリシー必須 |
§4.2 |
選択子 first/nth(n)/last |
窓内で第 N・最後を選ぶ。既定は最内窓、of: で明示。窓相対 |
§4.3・I4 |
点変換 roll(conv, on:) |
無効点を conv で有効点へ寄せる。on: は軸名または導出ストリーム |
§4.4 |
点変換 shift(n, unit:) |
U 単位で n(符号つき)動かす。方向は符号で表す |
§4.4 |
点変換 snapTo(w) |
各点を属する w 窓の先頭点へ写す(floor。粒度の継ぎ目を揃える)=chronos 所属の整合 |
§4.4・ADR-27/30 |
点変換 rebase(to:) |
日付ラベルを保存して to tz の同日付の市民日先頭へ写す=ラベル対応の整合(クロス tz の「同じ日付」合成=F69)。入力は既定整列の day グリッド限定・存在しない日付は明示エラー |
§4.4・ADR-40 |
射影 ordinalIn(u, w, d) |
点 d が属する w 窓内で d の属する u 窓が第何番目か(1 起点・粒度非依存)。nth の逆向き |
§4.9・ADR-27/30 |
射影 epochOrdinal(u, d) |
紀元からの u 窓通し序数(0 起点。紀元は言語既定 1970-01-01・epoch: で上書き可) |
§4.9・ADR-27/30/31 |
| ラベル射影(束縛名) |
ラベルを持つ窓/サイクル/テーブルの束縛名がそのまま射影名(weekday(d)・sekki(d))。点はラベルを格納せず射影で読む(labelOf 汎用語は廃止・ADR-30) |
§4.9・§3.6 |
窓インスタンス参照 W(v) |
ラベル源つき窓束縛への値適用=逆像(year(2020)=その年の日々。時間ストリームで返る)。全マッチ和・空は正当・静的列挙可能なラベル値域の域外は静的エラー。束縛名射影の双対で、点か値かは引数式の型で分岐(展開後判定=§2.7) |
§4.9・§2.7・ADR-42 |
| 要素点列 |
窓束縛 W の定義が窓に束ねた入力点列のうち W の窓に属する点(grid/span/split 連鎖=原子グリッド目盛りと同値・segmentBy=入力点)。窓インスタンス参照の台。内部概念(ユーザーが書く語ではない) |
§4.9・ADR-42 |
| 結合子 |
ストリーム×ストリーム→ストリーム。和 \|・積 &・差 \。積・差は両辺の整列一致を要求 |
§4.5 |
| カスケード |
優先度付き上書き。専用記号を持たず和・差の左結合順序適用で表す(後勝ち) |
§4.5 |
| 整列(alignment) |
ストリームの静的性質「全点が原子グリッド G=(幅・正規化位相・tz 名)の目盛り上にある」。&/\/軸所属は同一 G を要求(不一致は静的エラー)、snapTo が明示の再整列。型ではない(ADR-05/36)。値は G か「なし」か空虚適合(空テーブル=全整列に空虚に適合・検査に通り結合は相手を継承。ADR-45) |
§4.5 |
フィルタ filter |
述語で間引く。premise 述語 on: と値式述語(ラムダ)の両方を取る |
§4.6 |
ストライド stride(n, from:) |
入力の点を「n ごと」に間引く(入力相対・軸引数なし。何を数えるかは前段が決める=ADR-38)。n は 1 以上の整数。窓を消費せず境界無視・連続。起点 from: 必須(from: 以上の最初の入力点が第 0 歩) |
§4.7・ADR-31/38 |
ストライド strideBy(w, from:) |
幅で刻む(複数軸の物理量。例 1 sol)。起点 from: 必須 |
§4.7・ADR-31 |
窓所属述語 coincides(S, w, d) |
点 d の属する w 窓に S の点が在るか(論理値=有界存在量化)。区間所属で整列不問(tz 名のみ検査)・確定は証人規則(真=非註釈区間の点・偽=窓が実効被覆域内)。F68 の受け皿 |
§4.9・ADR-38 |
| 糖衣定義(基底 B) |
name(引数) = s => s |> core列。前段を s => で束縛 |
§4.8 |
| 糖衣定義(略記 A) |
前段が素直なら s => を省くポイントフリー(eta 簡約) |
§4.8 |
6.5 記号・接頭辞・名前付き引数
| 記号 |
意味 |
参照 |
\|> |
段の連結(本体層 stream→stream/premise 層 premise→premise) |
§2.5 |
. |
premise 修飾(Gregorian.month) |
§2.5 |
\| & \ |
結合子 和・積・差(\=U+005C、円記号 ¥ ではない) |
§4.5 |
= / == |
束縛(定義)/等値比較 |
§3.5 |
=> |
ラムダ束縛(型記法 -> と区別) |
§3.5 |
+ - * / mod div |
算術(mod・div は語) |
§3.5 |
[…] / l[i] / in |
リストリテラル・添字(0 起点)・所属述語 |
§3.5 |
a..b |
日付範囲(連続日への展開糖衣) |
§3.8 |
"…" |
文字列リテラル(TZ・出所の値。改行不可・エスケープなし) |
§5.5・ADR-32 |
and or not |
論理(語。記号は結合子に温存) |
§3.5 |
? : |
三項条件 |
§3.5 |
@名前 |
premise 束の軽量参照 |
§3.2 |
on: / unit: |
段が数える軸を名指す(roll/filter / shift。stride は入力相対=軸を取らない・ADR-38) |
§3.3 |
of: |
選択子の対象窓を明示 |
§4.3 |
by: |
split の幅の単位 |
§3.6 |
axis: |
前文での軸の既定(畳み込み。ADR-29 で確定) |
§3.3 |
phase: |
span/split の位相起点 |
§3.7 |
anchor: |
cycle のラベル位相(どの実日が先頭ラベルか) |
§3.6 |
from: |
ストライド一族(stride/strideBy)の起点。常に必須(窓からの供給は ADR-31 で廃止) |
§4.7 |
edges: / empties: |
segmentBy の隙間ポリシー |
§4.2 |
roll: |
前文でのロール規約の既定(畳み込み。明示推奨) |
§3.3 |
covering: |
有効範囲=「範囲内は完全・範囲外は未知」の二面の主張。値には触れない(全要素の包含は静的検査)。開端 2021../..(完結主張・統治つき)・区間リスト・束縛後置(被覆主張)可。省略=列の端(最狭)と ..=全域完結(最広)は正反対(空テーブルは端が無く省略不可=明示必須。ADR-45) |
§3.8・§4.10・ADR-26/37/45 |
label: |
窓生成時のラベル付与式。ラムダは窓の先頭点を受け、名前(d) ≡ 付与式(先頭点)(射影時・遅延評価)。代表点への窓・射影参照は可・隣接窓と自己参照は不可 |
§4.9・ADR-30/34 |
labels: |
並行ラベル列(射影の定義データ)。テーブル=点ラベル(時点列と同長・ADR-30)/segmentBy 窓列=窓ラベル(覆域基準の窓数と同長・窓列序数で整列・ADR-39=F62 の器) |
§3.8・§4.2・ADR-30/39 |
6.6 ロール規約・列挙値
| 用語 |
定義 |
参照 |
| Following / Preceding |
無効点を次/前の有効点へ寄せる |
§4.4 |
| Modified |
上位窓を引数に取り、その窓内に留めて寄せる |
§4.4 |
| Mon…Sun |
曜日ラベルの列挙値(値型)。cycle の巡回列に使う |
§3.6 |
6.7 不変条件 I1–I8
| 番号 |
一行 |
参照 |
| I1 |
基底固定(全要素は単一基底 Chronos 上の点) |
§2.6 |
| I2 |
閉包(全演算子は (ストリーム…, premise) → ストリーム) |
§2.6 |
| I3 |
明示解決(ロール規約・錨解決を必須引数に。サイレントバグを構文上不能に) |
§2.6 |
| I4 |
窓相対(選択子は包含窓に相対。窓なしは型エラー) |
§2.6 |
| I5 |
網羅性検証(パーティション型は網羅・無重複検査可、区間列型は隙間明示) |
§2.6 |
| I6 |
文脈流し(TZ・WKST・asof・範囲外の出自〈区間註釈〉は評価文脈/註釈として流す) |
§2.6・§4.10 |
| I7 |
純粋・遅延(無限ストリーム上でオンラインに定義) |
§2.6 |
| I8 |
生成子純粋(生成子は暦法だけに依存しカレンダー非依存) |
§2.6 |