アカウント名:
パスワード:
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
開いた括弧は必ず閉じる -- あるプログラマー
数値表現は文字列の話だよ (スコア:1, 興味深い)
・数値: 1.0とか1,0とか、 -1とか1-とか
・通貨: 1,000,000 とか 1.000.000とか
・パーセント: 10% とか %10とか
そのため、数値は各言語環境で用意している国際化フォーマット用のライブラリを使って文字列に変換します。
標準が変わったとしても、変更があるのは所詮ライブラリの中の話です。
# 数値フォーマットライブラリ使ってないで自分でカンマ入れて
文字列の話ではない、仕様の話だ (スコア:1)
たとえば、値域を [最小値,最大値] と入力する、という仕様はどうしたものでしょうか。[1,2,3] って言われても、1.2から3までなのか。1から2.3までなのかわかんないし。
いや、こんな仕様、変えてしまえばいいんですけどね。問題は、仕様を考えるに当たり、「世界中の表記と習慣を知っておけ」といわれたって困る、ってことな
Re:文字列の話ではない、仕様の話だ (スコア:0)
> 問題は、仕様を考えるに当たり、「世界中の表記と習慣を知っておけ」といわれたって困る、ってことなんです。
だから国際ライブラリ化して、言語の数値リテラルと一線を画するんですよ。
数値リテラルはあくまでリテラルであって、自然言語での数値表現とは別のものにしているんです。
今回
Re:文字列の話ではない、仕様の話だ (スコア:1)
で、数字リテラルに "," が含まれる環境があるので、ふたつの数字リテラルの表示・入力を区切るのに "," を使っちゃいけない。それも了解。
じゃ、ふたつの数字リテラルを区切るのに使ってもよい文字と、それを使ってもよい理由を教えてください。という話です。この部分は、数字リテラル本体ではないので、国際化ライ
Re:文字列の話ではない、仕様の話だ (スコア:0)
国際化ライブラリを使う、で現状には特に問題ないのでは。
ようは自然言語の「数値表記文字列」とプログラミング言語文法の「数値リテラル」は最初から「別物として扱っている」ということなのですが。
例を使うと、あるプログラミング言語では範囲を [1.2, 3]としていた場合、自然言語の数値表記標準が変わったからといって[1,2, 3]に変える必然性はまったく無いのです。
1,2というような「リテラル」を使う言語なら文法が[1,2:3]のようにわかりやすくしているでしょう?
Re:文字列の話ではない、仕様の話だ (スコア:1)
「体重:56.4,58」と、体重の範囲を出力するプログラムがすでにあったとして、どうすればいいのですか? このままだと、たとえば仏文環境なら、「(体重のフランス語): 56,4,58」と表示されます。これじゃ、わけがわからないです。
私としては、最初から自然言語の話しかしていないつもりです。
Re:文字列の話ではない、仕様の話だ (スコア:0)
ロケールに応じて、自分でそれぞれ用意したフォーマッタとパーザーを選択すればいいだけでしょ。
この場合だと、パ
Re:文字列の話ではない、仕様の話だ (スコア:2, すばらしい洞察)
というわけで、「国際化プログラミングでは、数値表現は日付や時間と同様にロケールによって変わるものです [srad.jp]」では不十分であり、ロケールによる表現の変化に合わせ、周辺の表現も適切に考えておく必要があります。
また、「変更があるのは所詮ライブラリの中の話です [srad.jp]」だけでは収まらず、ライブラリ
Re:文字列の話ではない、仕様の話だ (スコア:1)
# 誰か、良いモデレートを。