MPS 2026.1 ヘルプ

基本言語拡張スタイルガイド

基本言語は、MPS で群を抜いて最も広く拡張された言語です。典型的な MPS プロジェクトは、さまざまなソースまたは言語ベンダーからのさまざまな拡張機能を使用する可能性が非常に高いため、コミュニティは、すべての言語で統一されたスタイルを持つことで恩恵を受ける可能性があります。このドキュメントでは、作成者がすべての基本言語拡張機能に適用する必要がある規則について説明します。

クイックリファレンス

使うなら…

そのスタイルをに設定 ...

.

ドット

[

LeftBracket

]

RightBracket

{

LeftBrace

}

RightBrace

= + - * / % ++ -- ! == != > >= < <= && || ?: (ternary) ~ << >> >>> & ^ | :eq: :ne:

演算子

@interface abstract assert boolean break byte case catch char class const continue default do double else enum extends false final finally float for get goto if implements import instanceof int interface long native new null package private protected public return set short static strictfp super switch synchronized this throw throws transient try true void volatile while

KeyWord

キーワード

キーワードは広く使用されている文字列であり、言語から重要な概念を識別します。例: 基本言語のすべてのプリミティブ型はキーワードです。また、ifStatement、forStatement などのステートメントの名前もキーワードです。キーワードには、基本言語のスタイルシートの KeyWord スタイルを使用します。

波括弧

波括弧は、包含構造内のコードブロックを区切るためによく使用されます。if のような構造を作成する場合は、開始波括弧を構造ヘッダーと同じ行に配置します。つまり、次のようにします。

abc { code }

代替

abc { code }

左括弧スタイルと右括弧スタイルを使用して、正しいオフセットを設定してください。開き括弧波括弧の左側の文字と括弧自体の間のスペースが正確に 1 スペースになるようにしてください。これは、padding-left/padding-right スタイルを使用することで実現できます。

丸括弧

括弧を使用する場合は、LeftParen/RightParen スタイルを左 / 右括弧に設定します。括弧セルの兄弟が名前付きノードのプロパティである場合は、最初 / 最後の位置が許可されたスタイルで括弧の最初 / 最後の位置を無効にします。

識別子

メソッド、変数、フィールドなどの名前付きノードを使用する場合、その名前プロパティの左右のパディングはゼロにする必要があります。また、識別子の宣言と参照に同じ色を付けることもおすすめです。例: 基本言語では、フィールドの宣言と参照は同じ色です。

句読点

どこかにセミコロンがある場合は、そのスタイルをセミコロンに設定します。ドットがある場合は、ドットスタイルを使用します。二項演算子がある場合は、演算子スタイルを使用します。

基本言語 クロージャー

2026 年 5 月 06 日

関連ページ:

基本言語

BaseLanguage は MPS における Java に相当する言語であり、ほぼ同じ構成要素を共有しています。BaseLanguage は MPS におけるコード生成の最も一般的なターゲットであり、同時に最も広範囲に拡張された言語でもあります。Java との統合を簡素化するために、MPS のすべてのモジュールに対してクラスパスを指定できます。クラスパスで見つかったクラスは、@java_stub モデルに自動的にインポートされ、BaseLanguage を使用するプログラムで直接使用できます。MPS...

クロージャー

導入:クロージャは、基本言語の便利な拡張機能です。コードを簡潔にするだけでなく、プログラミングにおける関数型パラダイムの世界へと導いてくれる手段としても活用できます。プログラム内で関数を第一級オブジェクトのように扱うことができます。つまり、変数に格納したり、メソッドの引数として渡したり、メソッドや関数が他の関数を返すようにしたりできます。MPS クロージャサポートを使用すると、独自の言語でクロージャを使用できます。実際、MPS 自体も、コレクション言語などでクロージャを多用しています。この言語は...

MPS Java との互換性

構成:環境設定ウィンドウの Java コンパイラー構成タブには、プロジェクトのバイトコードバージョンという 1 つの設定しかありません。この設定は、MPS によってコンパイルされたすべての Java クラスのバイトコードバージョンを定義します。これらのクラスには、言語の側面から生成されたクラス、ランタイムソリューションのクラス、サンドボックスソリューションのクラスなどがあります。デフォルトでは、バイトコードバージョンは JDK Default に設定されています。つまり、コンパイルされたクラスの...