用語集
💡 お知らせ: このドキュメントはAIによって翻訳されています。表現に違和感がある場合は、原文(英語)を参照するか、翻訳にご協力ください。
Algebraic Data Type(代数的データ型). 直和型と直積型、すなわち列挙型とタプル型を用いて定義されるデータ型です。
Algebraic Effect(代数エフェクト). ハンドリング可能な、ユーザー定義のエフェクトです。ハンドラには、そのエフェクトの(限定)継続が渡されます。継続は、破棄することも、一度だけ再開することも、複数回再開することもできます。
Associated Type(関連型). トレイトに属する型です。各トレイトインスタンスは、そのインスタンスにおける具体的な関連型を指定します。したがって、異なるトレイトインスタンスは異なる関連型を持つことができます。
Associated Effect(関連エフェクト). トレイトに属するエフェクトです。各トレイトインスタンスは、そのインスタンスにおける具体的な関連エフェクトを指定します。したがって、異なるトレイトインスタンスは異なる関連エフェクトを持つことができます。
Checked Cast(検査付きキャスト). コンパイラが正しさを保証する安全なキャストです。実行時に失敗することはありません。
Effect(エフェクト). Flix は3種類のエフェクトをサポートしています。組み込みエフェクト(例:IO や NonDet)、リージョンベースのエフェクト、そしてユーザー定義エフェクトです。
Effect Cast(エフェクトキャスト). 式のエフェクトを変更するキャストです。
Effect Member(エフェクトメンバ). 関連エフェクトを参照してください。
Effect Polymorphic(エフェクト多相). 関数引数のエフェクトに応じて、自身のエフェクトが決まる関数のことです。高階関数も参照してください。
Effect Handler(エフェクトハンドラ). ユーザー定義エフェクトをハンドリングする式です。
Higher-Order Function(高階関数). 関数を引数として受け取るか、関数を返す関数です。
IO Effect(IOエフェクト). 外部世界とのあらゆるやり取りを表す、組み込みの汎用エフェクトです。
Pure(純粋). エフェクトを一切持たない関数(または式)のことです。
String Interpolation(文字列補間). 文字列の中に式を含めることを可能にする言語機能です。
Tail Call(末尾呼び出し). 末尾位置にある関数呼び出しのことで、追加のスタック領域を必要としません。
Trait(トレイト). 関数シグネチャとデフォルト関数の集まりを規定するインターフェースです。1つのトレイトは複数のデータ型によって実装できます。Flix におけるトレイトは型クラスです。
Type Class(型クラス). Trait を参照してください。
Type Cast(型キャスト). 式の型を変更するキャストです。
Type Inference(型推論). プログラマによる注釈を必要とせずに、コンパイラが式の型を推論できるようにする言語機能です。
Type Member(型メンバ). 関連型を参照してください。
Unchecked Cast(未検査キャスト). コンパイラによって検証されない、安全でないキャストです。実行時に失敗する可能性があります。
Uninterpretable Effect(解釈不能エフェクト). ハンドリングできない(またはすべきでない)エフェクトです。例:IO。