-
Notifications
You must be signed in to change notification settings - Fork 39
Closed
Labels
Milestone
Description
Related to #359
主に中置演算子(infix)の構文とぶつかる問題があるため。
以下のようなコードがあるとき
match x {
1 => "a"
2 => "b"
* => "c"
}
"b" *以降の部分が中置演算子として解釈されて、構文エラーになる
これまでは中置演算の途中で改行をはさめないように(エスケープすれば可能)することで、
ぶつかるのをなんとか回避していたが、いっそ仕様を変えてしまいたい。
余談:
新しいパーサーではスペーシングの1つである改行を特別扱いしたくないという気持ちがある
パーサーの複雑化を招く原因になると思う
区切り文字を置けば中置演算子と干渉しなくなる。
コンマ区切り?
match x {
1 => "a",
2 => "b",
* => "c",
}
セミコロン区切り?
match x {
1 => "a";
2 => "b";
* => "c";
}
行頭にキーワードを置いても良さそう
この場合は区切り不要にできる
match x {
case 1 => "a"
case 2 => "b"
default => "c"
}
FineArchs