https://github.com/rust-lang/rfcs/pull/2544
::<>をなくす提案リベンジ。Rustではジェネリクス引数を<>に入れるが、特定の文脈では構文上の都合で::<>とする必要があり、混乱のもとになっていた。理論的には曖昧性なく::を除去することはできないが、全数検査によりそういうケースが実際にはないことがわかった。
Conversation
Notices
-
Masaki Hara (qnighy@qnmd.info)'s status on Tuesday, 18-Sep-2018 09:49:20 JST
Masaki Hara
- あじょだよ repeated this.
-
Masaki Hara (qnighy@qnmd.info)'s status on Tuesday, 18-Sep-2018 09:53:30 JST
Masaki Hara
そこで、ジェネリクスと演算子が曖昧なときはまずジェネリクスと思ってパースし、失敗したらバックトラックするという方法が提案されている。Rustは今まででバックトラックをもたない定数先読み構文のみを使っていたが、この仮定は崩れることになる。実験的にはパーサーの効率に影響はないらしい
In conversation permalink あじょだよ repeated this.