challenge 複数行のコメントアウト

言語の機能系の問題です。

ソースコードの複数行にまたがる範囲を、範囲の前後に何かを書き足すだけで実行しないようにしてください。 「その範囲を削除する」などはダメです。 何重まで入れ子にできるか、どのような制限があるかを明記してください。 例えばJavaであれば/*~*/で複数行のコメントアウトができますが、入れ子/* /* */ */にできません。 Pythonであれば"""~"""で文字列化することでコメントアウトでき、'''~'''も使えるので2重まで入れ子にできます。

このお題は、無制限に入れ子にできるCommon Lispからの挑戦状です。 プログラミングシンポジウムで前田敦司先生の発表を聞いて思いつきました。

Posted feedbacks - Ruby

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
#!/usr/local/bin/ruby -Ke
=begin
コメント。
ネスト不可。
=end
if false
  これは
  ネスト可
  if false
    でも文法違反したらダメ!
  end
end

%文字列がネストできるって知ってた?
1
2
3
4
5
if false then %{
   if false then %{
      nested comment
   }; end
}; end

Index

Feed

Other

Link

Pathtraq

loading...