副作用のあるコメントがある言語は? 本質的に、コメントではないコメント....
8 に答える
DOS バッチ シェル プログラミング
REM (Remark) では、コメントを入れることができます。ただし、ERRORLEVEL 変数を 0 に変更するという副作用があります。
ある意味では、最後の操作を成功させます。
コメントが失敗する可能性があるかどうかはわかりませんが、失敗した場合はカバーされます.
英語。勝てますか?
コメントが実際にはコメントではない場所がいくつか考えられます。
- HTML およびスクリプト タグ (スクリプトを許可またはサポートしないブラウザーのサポートを提供します)。
そして、かなりあいまいに:
- IBM Informix 4GL (I4GL) および 4J の Genero (Informix Dynamic 4GL、D4GL の後継)。表記法「
--#
」は、D4GL のみに適用可能な内容を含めるために D4GL で使用されました。I4GL はそれをコメントと見なします。逆表記は '--@
' で、D4GL へのコメントのように見えましたが、I4GL ではアクティブ マテリアルとして扱われました。
そして、さらにあいまいに:
- I4GL の複数のコメント機能を利用して、2 言語対応の I4GL ファイルを作成しました。' ' (ハッシュ) で始まるマテリアル
#
は、文字列の外側のコメントの開始を示します - 次の改行まで、'--
' (二重ダッシュ) と同様です。また、'{...}
' (中括弧) は複数行のコメントを囲みます。 - ソース ファイルの先頭は実際にはシェル スクリプトであり、ほとんどが '
{...}
' で囲まれています。これはもちろん、シェルでは完全に正当なものです。シェル スクリプトはデータ駆動型のコード ジェネレーターであり、それ自体を出力の先頭にコピーし、約 100 個の関数を生成しました。これらの関数はすべて気のめいるように似ていますが、わずかに異なります (テンプレートやプリプロセッサのない言語で)。コードは、外部データを最後に受信してから何が変更されたかを確認するために、外部ソース (実際にはロイズ オブ ロンドン) から受信したデータに対して特定の船のデータベースにあるものを検証する必要がありました。特にデータベース (SQL) の null を処理する必要があったため、重要な比較作業。 - このファイルは実際には Quine プログラムではありませんでしたが、いくつかの共通点がありました。特に、壊れた I4GL コードをスクリプトにフィードすると、既存の I4GL コードが無視されるため、再生成されたファイルは再び完全になります。
Haskell は、コードをコメントに含めることで、通常のコード パラダイムのコメントをひっくり返すことができます ( Mathematica なども同様です)。リテラル プログラミングは、より数学的な傾向のある言語にとって優れた機能です。
また、Java の注釈は動作を伴うコメントのようなものです。
それからもちろん「ポリグロット」があります -- 複数の言語でコンパイル/実行できるプログラムです。通常、これらは、同じ行がある言語ではコメントであるが、別の言語では実際のコード行であるという事実に依存しています。
QBasic は独自のコメントを使用するREM $STATIC
かREM $DYNAMIC
、配列の割り当て方法を設定します。
別の例: Web ブラウザがコメントを解析するとき<!-- -- -->in<!-- -- -->correctly
。
この古い質問に出くわしたばかりで、最初に考えたのは javadoc コメントでした。
巧妙なクロスブラウザー ハックのための CSS。もちろん、CSS を言語と呼ぶつもりはありません。