Visual Basic 10 ではほとんどの行継続でアンダースコアが省略可能となる改良されたコンパイラが備わる予定だ。 これは伝統的に行末で終端を表す言語であった VB とって大きな変化である。 Visual Basic チームは暗黙の行継続について詳細な説明(リンク)を行っている。
V C# における明示的なセミコロン ";" と同じように、VB 1-6 および VB.NET (7-9) ではステートメントの終了トークンとして復帰改行を用いた。 暗黙の終了トークンへと移行することで、Visual Basic 言語の可読性はとりわけ複数行にわたる LINQ クエリを記述する際に大いに改善される。
Dim dates = from d in listOfDates _ where d.Year > 2009 _ select d _ distinct _ order by d
これは以下のように記述できるようになる。
Dim dates = from d in listOfDates where d.Year > 2009 select d distinct order by d
先に言及した VB チームによる説明では、暗黙の行継続に対応していない特定のケースについて取り上げている。
我々はすべてのシナリオをおさえているわけではありません。 この機能に関するコストおよび時間の制約を前提として、労力に見合うだけの価値は提供できるであろう最も一般的なケースをおさえようと努めました。 また我々は明らかに問題につながるようなケースは回避しました。 仮にどこでも暗黙の継続を許容すると決めてしまった場合に起こり得る問題の例を以下に示します。 これらは Lucian Wischik 氏(VB コンパイラチームの一員でもある)による我々の文法に関する分析から持ち出したものです。
With y A=x .xfield End With
もし ‘.’ の前で暗黙の継続を許すと、そのピリオドが何に属するものか把握する上で問題が起こるでしょう。 例えば、これは以下のように解釈することができます。
With y A=x.xield End With
Or
With y A=x .xfield End With
Channel 9 では Visual Basic コンパイラチームの開発者である Tyler Whitney 氏への素晴らしいインタビューも行っている(リンク)。