基本式

基本式 は、すべてのプログラムの基礎的なビルディング・ブロック であり、以下のものが組み込まれています。

  • 定数リテラルおよびタプル
  • 算術、関係、および論理演算
  • 文字列の連結、比較、およびパターン・マッチング
  • 集合演算
  • オブジェクト比較
  • 変数

定数リテラル

定数リテラル は、基本型である文字列、整数、実数、ブールの値、および regexp 型の値を 表します。

これらの式は、単に、各式に対応する値を求めます。

文字列

文字列は、引用符 (") で囲みます。. 例

"abc"
"a¥"bc¥tdef¥n"

整数の例

2
100

実数の例

-2.0
3.4

ブール

この定数は、真または偽のいずれかに なります。

regexp

正規表現 の構文については、字句エレメントを参照してください。正規表現は、次の例のように、 逆引用符 (`) で囲みます。

`[a-zA-Z]+`

タプル

タプルは、順序付けられた値のコレクションを表します。 これらの式は、以下の例のように、括弧内に複数のコンポーネント をコンマで区切ったリストの形式で 示されます。

(1, true)
("abc", true, -2.0)
注: 表示形式を段落から列に変更するには、¥n を使用して 新しい行を挿入し、replace_all コマンドにその他の変更を加えます。 replace_all コマンドの説明については、組み込み関数のカタログセクションを参照してください。

算術演算

プリミティブ値での算術演算は基本式です。 算術演算子 +、-、*、および / は、整数と実数について標準的な意味をもちます。 算術演算子に対する引数は、integer または real のいずれかと同じ型です。

関係演算

プリミティブ値での関係演算は基本式です。 関係演算子 =、<>、<、<=, >、 および >= は、整数と実数について標準的な意味を持ちます (<> は非等価演算子を表します)。 関係演算子に対する引数は、型が一致しなければなりません。

論理演算

プリミティブ値での論理演算はブール値に関する基本式です。 論理演算子を以下に示します。

not
and
οr
implies (p implies q  ≡ not p or q)

文字列演算

文字列の連結、比較、およびパターン・マッチングは、2 項演算子の形式で 表される基本式です。

文字列の連結

演算子 + は、以下の例で示すように 2 つの文字列を連結します。

"abc" + "def" ⇒ abcdef

文字列の比較

関係演算子 (=、<>、<、<=、>、>=) は、 以下の例で示すように、文字列の辞書順比較を実装します。

"abc" = "abd" ⇒ false
"abc" <> "abd" ⇒ true
"abc" < "abd" ⇒ true

文字列のパターン・マッチング

演算子 ~= および ~<> は、 左側の文字列と右側の正規表現が一致か不一致かを比較します。 以下の例で示すように、~= および ~<> の右側の引数は、 正規表現リテラルではなく文字列リテラルにする必要があります。

"abc" ~= "a*" ⇒ true
"abc" ~<> "a*" ⇒ false
"10111010110101" ~= "[01]+" ⇒ true
"abcdefghijkl" ~= "[^01]+" ⇒ true

フィードバック