「不思議だ」の日記

Assy(在導万創)のブログ。デザイナー見習いの作家です。小説と詩集と日記を書いています。

14-コンピュータ2

コンピュータ2

ロボット

#include <stdio.h>
#include <stdlib.h>
struct _obj {
int p;
int hara;
};
int getlp(struct _obj *obj){
obj->p = rand()%4;
return 1;
}
void action(struct _obj *obj){
if(obj->p==0){
printf("はらは");
if(obj->hara==0){printf("減った。");}
else{printf("減っていない。");}
}
if(obj->p==1){printf("楽しい。");}
if(obj->p==2){
printf("はらが減る");
obj->hara=0;
}
if(obj->p==3){
printf("おいしいごはんを食べた");
obj->hara=1;
}
}
int main(void){
struct _obj obj;
obj.hara=1;
while(getlp(&obj)){
action(&obj);
}
}

ロボットの今後。
記憶を作って、覚えて考えるようにする。
認識を覚えて、知らないものを考える。
学習と考え方を作る。証明の仕方を覚えて、証明するようにする。
改良するためには、パラメータとメソッドを増やす。
ランダムが悪い。優先順位をつければ良い。

ロボット

#include <stdio.h>
#include <stdlib.h>
struct _obj {
int p;
int w;
int t;
};
int getlp(struct _obj *obj){
obj->p = rand()%5;
return 1;
}
void action(struct _obj *obj){
if(obj->p==0){
printf("ここは");
if(obj->w==1){
printf("日本です。");
}
if(obj->w==2){
printf("ドイツです。");
}
}
if(obj->p==1){
printf("日本にやってきました。");
obj->w=1;
}
if(obj->p==2){
printf("ドイツにやってきました。");
obj->w=2;
}
if(obj->p==3){
printf("想像力を使います。");
printf("りんごは赤い。");
obj->t=1;
}
if(obj->p==4){
printf("想像力を使います。");
printf("りんごは白い。");
obj->t=0;
}
if(obj->p==3||obj->p==4){
if(obj->t==1){
printf("正しい。");
}
else{
printf("間違っている。");
}
}
}
int main(void){
struct _obj obj;
obj.w=1;
obj.t=1;
while(getlp(&obj)){
action(&obj);
}
}

僕のロボットは、Cでオブジェクト指向だ。パラメータとメソッドを保持し、getとsetをしている。Javaにすると分かりやすいかもしれない。
ロボットが最初から、りんごが赤いのを正しいと知っているのがおかしい。そこだけ設定ファイルにすればいいかもしれない。
何が何なら正しいか、覚えて分かるのも良いが、複雑なプログラムになってしまう。
思考がすべてランダムなのはおかしい。優先順位をつけるのもいいが、それより、思考の後の次の思考を決めて、続けて言うようにすれば良いかもしれない。
◇◇
Linuxなんか、ただのスカイネットだ。
スカイネットは、ターミネーター2に出てくる、悪いロボットの会社だ。)
◇◇
Cでは、closeしたときにfreeするのを、JavaC#では、ガベージコレクタでメモリ管理を自動にできる。
おそらくC++では、コンストラクタとデストラクタ時に破棄すれば良い。
そして、使うものを作る。作ったものを使う。
あとは、Perlのパクリや、それと同様に、JavaC#が賢い。
◇◇
JavaScriptのようなLisp、HTMLのようなLispを作れば、
簡単にコンパイラが出来るような気がする。
JavaScriptのHTMLを処理するだけは、Lispと同じだ。
◇◇
パソコンは賢い。
悪いものが多いから、それで賢くなる。
Lispなど、賢いものも多いから、それで賢くなる。
◇◇
自動車は、死ぬのが悪いが、楽だ。
コンピュータは、壊れるのと、滅びた世界があるのが悪いが、
便利で、色んな事に使え、情報がある。
テレビは、馬鹿なのが悪いが、情報があり、面白い。
競争は、戦う、金もうけしかしないのが悪いが、日本が発展する。
◇◇
パソコンのハードウェアにメニューボタンをつけて、押すと「ホーム」を表示し、画面いっぱいの中から、クリックして項目を選ぶ。
ドコモのケータイのように、4つのボタンを配置し、サブメニューを表示したりする。これも、画面いっぱいを使う。
アプリケーションは、通常はボタンを表示せず、メニューはメニューボタンを押すと表示するか、マウスを一番上に持って行ったときにスライドで表示する。
あとは、画面いっぱいにビューを表示する。
画面いっぱいを使えば分かりやすくなるようで、そういうことはない。今のままの方が分かりやすい。
◇◇
自分が治さない方が、病気は治る。
自分が悪いせいで、みんなが悪く見える。自分は普通だし、みんなも普通だ。
出来るようになれば、簡単にできる。覚えれば、出来る。
初期投資をすれば、後で簡単にできる。Wiki記法やプログラミングがそうである。
完璧なコマンドや関数を作って、簡単に命令して使うのが、パソコンである。
Wikiのマクロの分かりやすい点は、ページ名を引数として、簡単に自動化できる点である。
おすすめの言語は、RubyC#
◇◇
パソコンのおかしな点は、IBM-PCに全て統一した点。
その前の多様な文化は消え去った。しかし、Windowsが発展した。
あとは、キーボード配列がおかしい。打ちやすいわけでもないのに、アルファベット順になっていない。
理由は、タイプライターがそうだったから。
あとは、マウスでメニュー、ボタン、タスクバー、スクロールをクリックして選択するのがおかしい。
ダブルクリックとドラッグ・ドロップがさらに難しい。
アップルが考えたのだろう。なれると使いやすいが。
◇◇
Linuxが成り立つのは、インターネットの共有は結構面白くて、
GNUストールマンが勝手にコマンドとコンパイラとエディタを作っていて、
トーバルズがインターネットに投下したカーネルが、みんなの反響を呼び、
適当にハッカーが集まって作っていると、色んなプロジェクトが出来て、
それを全部GPLの所有にして、金が無く、インターネットで平等分配していた。
◇◇
Linuxはクズだ。論外なのに、グーグルなどで多い。
FLOWと良く似ている。
◇◇
Linuxは、どのインターネットでも悲惨だから、やめた方が良い。
マイクロソフトやアップルの世界が分からなくなる。
悲惨に、カーネルのコードは、見ると誰でも分かるのが、Linuxだ。
なぜか、Androidカーネルとして採用されている。
◇◇
最近、右翼になったが、昔から自由、平等の左翼だ。
オープンソースは普通だ。Mac OS XBSDだ。サーバーは、Linuxが普通だ。
コードは、Cではポインタがオブジェクトを持ち、それぞれの関数の中で、同じデータを保持する。
メモリともいうが、ポインタだけをコピーした方が楽だ。
あとは、変数名で分かる。
普通、返り値と引数を統一してオブジェクト指向を行う。
Getを行い、ポインタを取得する。=で代入しても良い。
それから、繰り返しと代入がある。辿って分かれば良い。
Javaは、特に同じだが、賢い。C#も、特に同じだが、さらに機能が多い。
◇◇
普通の機械の方が良い。時計や車の方が面白い。
人間は、キモイ方が賢い。
どのように行うか、その原因はなぜか、を考えれば良い。
かもしれない、おそらく、はずだ、と考えれば良い。
Windowsは、中身が見れないのが悪い。GNU/Linuxハッカーが多いのは、中身が見れるから、誰でも分かるからだ。
それはどこから来たか。それは、誰がどうしたか。
◇◇
Linuxは、UNIX互換OSで、コマンドラインでは安定して動く。
フリーで、オープンソース、みんなで作るのが賢い。
作り方を馬鹿とはいうが、Wikiも似たようなものだし、Windowsだって同じように作っている。
プログラミングでは、データを関数で運んで、処理する部分で処理している。
UNIXは、入出力とパーミッションマルチタスクファイルシステムのシンプルなOSだが、
LinuxUNIXよりは賢い。
他のオープンソースなソフトウェアは、スクリプト言語PerlPHPコンパイラGCC
画像編集ソフトのGIMP、オフィススイートのLibreOffice、OSのFreeBSDOpenSolarisなどがある。
あとは、GoogleのOS、Androidオープンソースである。
良い点は、無料で、コードを見れるところだ。
Windowsでは、グラフィックの表示は、デバイスコンテキストを操作して行う。
Windowsがウィンドウを管理しているため、ハンドルを用いる。
詳しくは、検索して。
MSDNライブラリ:http://msdn.microsoft.com/ja-jp/library/default.aspx
ユーザーインターフェースhttp://msdn.microsoft.com/ja-jp/library/65dtx4a4.aspx
ウィンドウオブジェクト:http://msdn.microsoft.com/ja-jp/library/kc6x1ya0.aspx
OpenOffice.orgMozillaWindows版は意味がない。Windowsが全部やっているのに、MS/Windowsと戦っている。
オープンソースは全部GNU/Linuxの方が良い。みんな同じオープンソースコードだ。
Linuxは醜い。コンパイラ、ライブラリ、カーネルシステムコールに、インタープリタ、X、GTK+がある。インタープリタがXとGTK+を表示していると、最悪に見える。
給与を払わない。Linuxのものになる。誰も更新していない。
QtとGTK+アプリケーションが共存していると、キモく見える。KDEGNOMEが戦っていると、最悪に見える。
Androidに統一すべきなのだ。
ディストリビューションは、Red HatSuSEDebianUbuntuと無数にあるのが悪い。パッケージ管理システムも、バージョン管理も馬鹿に多い。
Windowsみたいに出来ないなら、しなくていい。何かになるように見える。
◇◇
データを運んで、処理して表示する。データは、メモリのどこかにあり、たまに操作する。
◇◇
世界と違うになる。
可能性を考える。
することを考える。ただ従うだけでなく、何かの決まりごとや原因と結果を、たらればで分かる。
Linuxは、みんなで作っているのが賢い。システム的には、シェルスクリプトの技術と、aptitudeが賢い。
あとは、ウィンドウを管理しているXと、その上の技術が賢い。X以上がカスタマイズできる。
GNOMEKDEは、コンポーネント技術と見た目、統一性が賢い。
サーバーサイドは、無数に技術がある。スクリプトと言語、SQL、サーバーが多様で、安定している。
あとは、カーネルのコードが見れるのが優れている。
劣っている点は、無料では給与が払われない。フリーソフトだから、それでいい。

Google 16:06

Googleは、子供だ。
Microsoftは、大人だ。

パソコン 16:54

パソコンには、まず、Windowsのスタートメニューと終了の方法、タスクバーがある。
これを使って、アプリケーションを実行する。
アプリケーションには、ウィンドウごとに、最大化、最小化、閉じる、のボタンがあり、
メニューとボタンから機能を選び、ビューに表示して編集する。
マウスとキーボードを使った機械だ。

アプリケーション 16:58

アプリケーションは、インターネットエクスプローラは、インターネットを表示し、移動する。
エクスプローラは、ファイルを選択し、作り、削除し、コピーする。
テキストエディタは、テキストの編集と保存を行う。
ワードは、高度な文章を編集する。
エクセルは、表計算をする。
パワーポイントは、プレゼンテーションを作る。
Visual Studioは、アプリケーションとソースコードを開発し、コンパイルする。
他に、お絵かきソフトや、音楽プレイヤーなどがある。

ハードウェア 16:58

ハードウェアから見ると、起動時にOSを起動する。
機械語インテルのCPUが計算している。
おそらく、論理和論理積で2進数を計算している。
ハードウェアに保存されたデータとプログラムをメモリに読み込んで
CPUがその機械語セット通りに、プログラムを実行する。
キーボードとマウスで、イベント駆動を行う。
周辺機器は、USBなど。
表示は、ディスプレイやモニターで行う。

パソコン 17:01

パソコンは、そのままで良い。
さらに簡単にしなくていい。十分簡単だ。
クラシック音楽のように残せばいいように見える。

作る 21:45

作るためには、仕組みを知って考えるしかない。
しかし、プログラミングは、そういう風には出来ない。
知性が必要なのだ。

戦わない 19:21

僕は、何も戦わないに治った。
その方がつらい。戦っていた方が楽だ。
いつも通り、ビルゲイツヒトラーを倒せばいい。

ビルゲイツ 19:22

ビルゲイツを倒すためには、どうしたらいいか。
アンドロイドを自社製品に採用すれば、すぐ倒せる。
Googleは賢い。
そうすると、ゲイツにあまり意味がない。

ゲイツ 19:23

ゲイツは倒さない。どうでもいいことにする。
誰が見ても、ゲイツが儲けると、世界が発展するから、良い。

Linux 19:26

Linuxはどうするか。
あれはバカだが、分かる。
コンパイルしてネットで会話するとよく分かる。
だが、低い。

Linux 19:27

Linuxはやめた方が良い。
倒さないが、使わない方が良い。
狂って、後でつらくなる。
つらいから、悪い。