四月十八日
1326 ワード
メモを取るのは自分が忘れるのを恐れて、必要なコンポーネント:array、hash、function、arithmetic、bit arithmetic、comment、assignment、contrl expressions(if-else、while(break、continue)、and、or)、global variable
詳しく補足します.賦値: 関数(コメント): 算数演算: ビット演算: 論理演算: 配列: 辞書: 制御フロー(最も基本的な制御フローのみを保持し、その他は言語そのもので実現): if-else(switch-caseはそれ以上に実現できるのでparseが省ける) while(continue, break) グローバル変数: yield: 基本タイプ: フルサイズ(Int 32) フロートタイプ(Float 64) 文字型(String) ブール型( 明日はすべての保留字を整理することができます.
詳しく補足します.
= -= += *= /= %= **=
(類型推定はCrystalで良い..)func foo(n)
return func () return n += 1 end #
end
func bar(pa=1, pb=2)
end
+ - * / % **
(これらはすべてCrystalと同じで、圧力がなく、以下同じ)& | ^ ~ << >>
and or not
foo = {1, "hi", 0.1}
呼び出しfoo[0] #=> 1
(タイプがサポートされていない、タイプがない、以下同)foo = {"a": 1, "b": 2}
呼び出しfoo["a"] #=> 1
if true
# do something
else
# another thing
end
while true
# do something
end
global a = "hello, world"
yield
はい!parseがCrystalになるのは簡単そうなのでつけました!true
、false
)