変換演算子

Q には複数の変換演算子が含まれます。 これらの演算子の構文は、関数適用の構文と同じです。 4 つの変換演算子 stringintegerreal、 および boolean があり、これらは基本型からその他の基本型への値変換をサポートします。 ここで、基本型とは文字列整数実数、およびブール です。 これらの変換のほとんどは分かりやすいものです。不明瞭な変換 ((bsi、および r は、それぞれブール文字列整数、および 実数 表現となる) については、以下にリストを示します。

   integer b ≡ if b then 1 else 0
   real b ≡ if b then 1.0 else 0.0
   boolean s ≡ if s = "true" then true else false
   boolean i ≡ if i = 0 then false else true
   boolean r ≡ if r = 0.0 then false else true

変換演算子のいくつかの適用例を以下に示します。

   integer "77" ⇒ 77
   string true ⇒ true
   integer true ⇒ 1
   boolean "true" ⇒ true
   boolean "foo" ⇒ false
   boolean 25 ⇒ true
   integer string 5 ≡ integer (string (5)) ⇒ 5
   integer string 5 + 7 ≡ (integer (string (5))) + 7 ⇒ 12
   integer boolean 5 + 7 ⇒ 8

フィードバック