Elekenさん > 「選別コメント」は汎用性がありそうで良いですね。 > 後方互換性を保つのは少し難しそうですが…。 > 実装されたら嬉しいです。 現在、選別コメントの設計を頭の中で進めています。 何点か明確にすべき点が出てきました。
@同一のコメント名称を複数個所に記述できるか? →可能にしようと思います。 これで、一発でいろいろな部分をコメント化したり有効化したりできます。
A選別コメントの階層記述はできるか? →これも可能にしようと思います。 下位ブロックが有効でも、それを含む上位ブロックがコメントになっていたら、全体がコメントです。 逆に下位ブロックがコメント指定されていて、上位が有効指定の場合は、下位ブロックのみコメントとなります。
B従来のブロックコメント!と、今回の選別コメントが、入れ子になっている場合の扱いは? →ブロックコメント!の中にある選別コメントは、無効になります。 また、コメント指定された選別コメントの中にある!は、無効になります。
C従来のブロックコメント!と、今回の選別コメントが、交錯している場合の扱いは?
<タイプA>
! P10 *comment{ V20 ! R30 } Q40
とか、 <タイプB>
*comment{ P10 ! V20 } R30 ! Q40
などです。
<タイプA>では、 1行目の!を検出した時点から、次の!が来るまで、すべてコメントになるので、 選別コメントのコメント/有効にかかわらず、R30 } Q40 だけが認識されます。
<タイプB>では、 選別コメントがコメント指定されていたら、R30 だけが認識されます。( Q40 は 後半の! でコメントになる ) 選別コメントが有効指定されていたら P10 Q40 だけが認識されます。( 選別コメントは開きっぱなし状態 )
・・・う〜ん、なんだか複雑だなぁ〜。 でもまあ、交錯している場合は概ね文法エラーが発生してしまうだろうから、これでいいかなぁ〜。 もっとこう、従来のブロックコメントと一体感のある言語仕様はないものだろうか・・・。 もう少し考えてみますね。
現時点では、実装に踏み切るには一番大切な判断材料が少々足りない感があります。 それは「新しい機構を導入し仕様を複雑にするに値するほど、皆さんの使用頻度が高いかどうか」です。
|