アカウント名:
パスワード:
数値リテラルと数値型変数に、 型の他に単位も付けられたらいいなと思ってた時期がありました。
加減算と代入は単位の次元が揃っていないと出来ないとか、 長さ次元の数を二つ掛けると面積次元に変換されるとか。 同じ次元なら、 例えば mm
たいていの単位は、kg、m、s、A くらいの組み合わせで表現できてしまいますよ。たとえば (kg, m, s, A) = (1, 2, -2, 0) だと J とか。
あと、有効桁数を自動的に追跡してくれたりすると、いいかもね、と思います。
それと、 無次元の数をどう扱うかですね。 角度と確率を足すなんて事は出来ませんし。
演算の結果としての無次元なら、 演算前の次元の比を持っていれば、 相互に加減算・代入が可能かどうか判断できるかもしれませんが。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日々是ハック也 -- あるハードコアバイナリアン
単位付きの数 (スコア:1)
数値リテラルと数値型変数に、 型の他に単位も付けられたらいいなと思ってた時期がありました。
加減算と代入は単位の次元が揃っていないと出来ないとか、 長さ次元の数を二つ掛けると面積次元に変換されるとか。 同じ次元なら、 例えば mm
Re:単位付きの数 (スコア:1)
Re:単位付きの数 (スコア:1)
たいていの単位は、kg、m、s、A くらいの組み合わせで表現できてしまいますよ。たとえば (kg, m, s, A) = (1, 2, -2, 0) だと J とか。
あと、有効桁数を自動的に追跡してくれたりすると、いいかもね、と思います。
Re:単位付きの数 (スコア:1)
それと、 無次元の数をどう扱うかですね。 角度と確率を足すなんて事は出来ませんし。
演算の結果としての無次元なら、 演算前の次元の比を持っていれば、 相互に加減算・代入が可能かどうか判断できるかもしれませんが。
Re:単位付きの数 (スコア:1)
というふうにすれば良さそうですね。
ところでマーチンファウラー「アナリシスパターン」にも
たしか単位を扱うためのパターンが紹介されていたような。
今手元になく、読んで何年もたってしまったので、確かめられないですが。
Re:単位付きの数 (スコア:0)
>たしか単位を扱うためのパターンが紹介されていたような。
>今手元になく、読んで何年もたってしまったので、確かめられないですが。
http://martinfowler.com/ap2/quantity.html [martinfowler.com]ですね。