いくつかの単純な2D図形を画面に描画するHaskellプログラムを作成しようとしていますが、各図形にカーソルを合わせると、図形が作成されたソースコードの行が出力されます。
これを行うために、寸法のパラメーターと行番号を示す最終パラメーターを使用して形状を作成できるようにしたいと思います。このようなもの:
rect1 = Shape(Rectangle 2 2 lineNumber)
これにより、幅2ピクセル、高さ2ピクセルの長方形が作成され、関数lineNumberを使用して、このコードが記述された行が格納されます。そのような関数はHaskellに存在しますか?作成するのは簡単ですか?
私はスタックオーバーフローを検索し、回答者がC++の__LINE__プラグマを使用して同様の効果を達成できることを示唆しているこの質問を見つけました。これはそれを実行するための最良の方法ですか、それとも純粋なHaskellでそれを行う方法はありますか?