私は日常業務で Tcl を使用しません。しかし、私たちのツールの拡張言語が Tcl (!) のように機能することを望んでいる顧客と時折やり取りする同僚がいます。彼が持ち出したトピックの 1 つは、Tclがグローバル変数 tcl_precision を介して doubleに格納される精度をどのように設定できるかということでした。
私はいくつかの Web 検索を行いましたが、見つけたドキュメントは確かにこれが事実であることを示唆しているようです (印刷精度を設定するだけではありません)。ただし、tcl_precision には波乱万丈の歴史があるようです。1つか2つのバージョンで完全に削除されてから元に戻されたという印象を受けますが、デフォルト値0をオーバーライドすることについて警告とツットゥッとあります。これは実際には17を意味します(マニュアルでは、IEEE 754 ダブル)。
では、tcl_precisionが実際に行うことを約束していること、および隠れた double にどのような影響があるかについて、誰か教えてもらえますか? 数値を出力するための単なるグローバル設定ですか、それとも実際に格納されている数値の精度を切り捨てますか (これは私には危険に思えます)?