ふにょい日記

ふにょ・い 2 (形)[文]ク ふにょ・し 思い通りにならない為力が入らなくなる様。[派生] ――げ(形動)――さ(名)

テキストデータの本質

2009-04-11 02:39:14 | プログラミング・コンピューター
しつこいようですが、テキストデータについてもう少し考えてみました。


テキストデータの本質は、
  • (イ)「文字」である事による抽象性
  • (ロ)「」が割り振られている事による計算のしやすさ
  • (ハ)広く深く浸透している「標準

であり、それによって得られるバイナリデータに対する利点は、
  • 再利用のしやすさ

という事になるかと思います。


(イ)と(ロ)は、バイナリデータと言うより、画像データとの比較と言う事になります。
バイナリデータに対して、テキストデータは「人間が読める」という違いがあるわけですが、
「人間が読める」と言う事だけならば、画像データも同じだからです。

画像データの場合、人間は、脳が画像全体から瞬時に認識して意味を汲み取れる訳ですが、
今のコンピュータは、画像を構成する点を一つ一つ計算していく事しかできません。

テキストデータの場合、もちろん人間は文字を単位として意味を汲み取る訳ですが、
コンピュータも簡単に文字を単位として処理ができます。

テキストデータは、人間が扱える単位からも、コンピュータが扱える単位からも、
とても近いデータで、人間にも機械にも優しいデータ形式と言えます。


バイナリデータに対して、圧倒的に有利な点が(ハ)になるでしょう。

バイナリデータは、何かによって人間に分かる形に変換されなければ、
人間が理解する事が難しいか、人間に理解できません。
人間に分かる形に変換してくれる何かが無くなってしまった場合、
そのデータは意味を失い、存在しない事と同じ事になります。

テキストデータも、その正体はバイナリデータであるので、
同じ問題を抱えています。

バイナリデータが意味を失わないようにするためには、
標準化して、人間に分かる形への変換の仕方が、誰にでも分かるようにする事と、
広く多くの人々に使われ、深く深く浸透して、無くてはならない物になる事が大切です。

そして、最も広く多くの人々に使われていて、最も深く深く浸透していて、
最も無くてはならない物になっているバイナリデータの標準こそが
テキストデータです。


ここまで書いて気がついたのですが、どうも、最初に掲げた(イ)(ロ)(ハ)の三項目の内、
(イ)(ロ)をまとめる事が出来そうです。
また、(ハ)の方が重要そうなので順番を入れ替えたほうが良さそうです。

つまり、テキストデータの本質は、
  • (甲)最も広く深く浸透している「標準のバイナリデータ形式
  • (乙)人間にも機械にも扱いやすい「データ単位

という事になると思います。


元の記事: それは「ストリーム」か「レコード」かという事では?(ふにょい日記)←この記事に 2009/04/11 03:13 頃、追記しました。
大本の記事: バイナリとテキストの本当の違い(404 Blog Not Found)

それは「ストリーム」か「レコード」かという事では?

2009-04-10 09:09:52 | プログラミング・コンピューター
バイナリとテキストの本当の違い(404 Blog Not Found) をちょっと読んで思ったこと。
[引用]

バイナリーとテキストの本当の違い、それは「終わり」にある。

    * 「終わり」がはじめにわかるのが、バイナリー。
    * 「終わり」が来るまで「終わらない」のが、テキスト。

本質的な違いは、これだけである。


[/引用]

これって、「テキスト」か「バイナリ」かじゃなくて、
「ストリーム」か「レコード」かじゃないかと思いました。

テキストのデータだって、レコードを定義すれば、
「終わり」がはじめに分かる状態になります。

バイナリのデータだって、「終わり」が来るまで「終わらない」形に
定義できます。
動画とかのストリーミングって、そうですよね。

やっぱり、テキストか、バイナリかの違いって、
汎用的で、一般的なツール(テキストエディタの様な物)で、
人間が読める形であるかどうかという事だと思います。

人間が読みやすい形であるから、デバッグがしやすかったり、
人間が手を加えやすかったりなどで、良いという事でしょう。


[2009/04/11 03:13 頃に追記]
Unix の教訓には、勿論、データはテキストで行けというのも含むと思いますが、それは、データの取り回し、再利用のしやすさの為という事であって、下記とは少しずれているように思います。

[バイナリとテキストの本当の違い(404 Blog Not Found) から引用]

文字列はテキストでも、文字そのものはバイナリー。

だからこそ、文字というバイナリーを設計するときにはずっと慎重にならなければならなかったのだ。その余裕がなくとも、せめて「もっと隙間を開けておいて」おくべきだったのだ。

~中略~

「テキストのアトム」としてのバイナリーさえきちんと抑えておけば、あとは「テキスト」でしのげる。これが Unix で得た最大の教訓の一つではないか。

[/引用]

私の記憶が確かならば、 Unix で得た教訓の一つには、ストリームで行けというのがあったように思うのですが、上の引用部分は、そちらの方が近いのではないでしょうか?

それは、 Unix 開発のきっかけとなった Multics のファイルシステムでは、
レコード形式のファイルをサポートしていて大変だったからとか何とかで、
それを反面教師に Unix のファイルシステムでは、バイトストリームのファイルしか
扱わない事にしたと何かで読んだように思います。
思い違い、記憶違いかも知れませんが……。
[/追記]

重音テト 一周年

2009-04-01 01:15:55 | 重音テト
ネット上で生まれた仮想アイドル「重音テト」(かさね てと)が一周年を迎えたようです。

ニコニコ動画 「テトオリジナル曲」 タグ
ニコニコ動画 「重音テト」 タグ

とりあえず、この辺が代表的な曲のようです。
「重音テト オリジナル名曲選」

次の8曲が丸々入っています。31分位あるので御注意ください。
こちらは、それぞれの曲へのアクセスに便利なリストです。(ニコニコ動画)
1. テトラポッド
  →さわやかで甘酸っぱい夏蜜柑の様で、タクシードライバーの松井さんを思い出します。(関係ないって。)
   いやいや、初夏の明るい日差しの下をスクーターで駆け抜ける様な爽快感で、その車の色は空の色が似合いそうな歌です。(そこから離れろって。)
2. バタフライ・バターナイフ
  →合唱曲の様な曲調に、卵からサナギを経て蝶への成長の過程と、バターナイフ、バタフライナイフが掛けられた歌詞を乗せた、明るいけどトゲと寂しさのある歌です。
3. 記憶庭園
  →ジャズ風の曲。男声のようにパラメータ設定した声(重音テッドと呼ばれます)とのデュエットです。
4. 遅れたplayer
  →POPS。カッコイイ歌です。
5. 耳のあるロボットの唄
  →テト初期の代表曲。難しい用語で動揺させて空けた僅かな心の隙間に言葉を染み込ませてくる歌、という感じでしょうか。
6. 世界の終わり
  →神秘的な所もあり、カッコよくもある歌です。
7. 星が弧を描くように
  →しっとりとして落ち着いた曲です。私は、歌詞が少しブルーな感じだと思いました。
8. preparation
  →ピコピコ系の音と数学用語の解説に乗せて人生を説く歌です。

これは、明るくて結構好きな曲です。
「【UTAU】SUPER★GIRL【重音テトオリジナル曲】」

元気いっぱいに女の子女の子している歌です。

一周年おめでとうございます。

関連サイト:
重音テト公式サイト
重音テト計画まとめ@wiki