コンピュータ2 -
ロボット,
ロボット,
僕のロボットは、Cでオブジェクト指向だ。パラメータとメソッドを保持し、getとsetをしている。Javaにすると分かりやすいかもしれない。,
Cでは、close()したときにfree()するのを、JavaやC#では、ガベージコレクタでメモリ管理を自動にできる。,
JavaScriptのようなLisp、HTMLのようなLispを作れば、,
パソコンのハードウェアにメニューボタンをつけて、押すと「ホーム」を表示し、画面いっぱいの中から、クリックして項目を選ぶ。,
Linuxが成り立つのは、インターネットの共有は結構面白くて、,
Linuxは、どのインターネットでも悲惨だから、やめた方が良い。,
Linuxは、UNIX互換OSで、コマンドラインでは安定して動く。,
データを運んで、処理して表示する。データは、メモリのどこかにあり、たまに操作する。,
パソコン,
パソコン,
作る,
戦わない,
ゲイツ,
----
コンピュータ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("減った。\n"); } else{ printf("減っていない。\n"); } } if(obj->p==1){ printf("楽しい。\n"); } if(obj->p==2){ printf("はらが減る\n"); obj->hara=0; } if(obj->p==3){ printf("おいしいごはんを食べた\n"); 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("日本です。\n"); } if(obj->w==2){ printf("ドイツです。\n"); } } if(obj->p==1){ printf("日本にやってきました。\n"); obj->w=1; } if(obj->p==2){ printf("ドイツにやってきました。\n"); obj->w=2; } if(obj->p==3){ printf("想像力を使います。"); printf("りんごは赤い。\n"); obj->t=1; } if(obj->p==4){ printf("想像力を使います。"); printf("りんごは白い。\n"); obj->t=0; } if(obj->p==3||obj->p==4){ if(obj->t==1){ printf("正しい。\n"); } else{ printf("間違っている。\n"); } } } 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()するのを、JavaやC#では、ガベージコレクタでメモリ管理を自動にできる。
おそらくC++では、コンストラクタとデストラクタ時に破棄すれば良い。
そして、使うものを作る。作ったものを使う。
あとは、Perlのパクリや、それと同様に、JavaのC#が賢い。
◇◇
JavaScriptのようなLisp、HTMLのようなLispを作れば、
簡単にコンパイラが出来るような気がする。
JavaScriptのHTMLを処理するだけは、Lispと同じだ。
◇◇
パソコンは賢い。
悪いものが多いから、それで賢くなる。
Lispなど、賢いものも多いから、それで賢くなる。
◇◇
自動車は、死ぬのが悪いが、楽だ。
コンピュータは、壊れるのと、滅びた世界があるのが悪いが、
便利で、色んな事に使え、情報がある。
テレビは、馬鹿なのが悪いが、情報があり、面白い。
競争は、戦う、金もうけしかしないのが悪いが、日本が発展する。
◇◇
パソコンのハードウェアにメニューボタンをつけて、押すと「ホーム」を表示し、画面いっぱいの中から、クリックして項目を選ぶ。
ドコモのケータイのように、4つのボタンを配置し、サブメニューを表示したりする。これも、画面いっぱいを使う。
アプリケーションは、通常はボタンを表示せず、メニューはメニューボタンを押すと表示するか、マウスを一番上に持って行ったときにスライドで表示する。
あとは、画面いっぱいにビューを表示する。
画面いっぱいを使えば分かりやすくなるようで、そういうことはない。今のままの方が分かりやすい。
◇◇
自分が治さない方が、病気は治る。
自分が悪いせいで、みんなが悪く見える。自分は普通だし、みんなも普通だ。
出来るようになれば、簡単にできる。覚えれば、出来る。
初期投資をすれば、後で簡単にできる。Wiki記法やプログラミングがそうである。
完璧なコマンドや関数を作って、簡単に命令して使うのが、パソコンである。
Wikiのマクロの分かりやすい点は、ページ名を引数として、簡単に自動化できる点である。
おすすめの言語は、RubyとC#。
◇◇
パソコンのおかしな点は、IBM-PCに全て統一した点。
その前の多様な文化は消え去った。しかし、Windowsが発展した。
あとは、キーボード配列がおかしい。打ちやすいわけでもないのに、アルファベット順になっていない。
理由は、タイプライターがそうだったから。
あとは、マウスでメニュー、ボタン、タスクバー、スクロールをクリックして選択するのがおかしい。
ダブルクリックとドラッグ・ドロップがさらに難しい。
アップルが考えたのだろう。なれると使いやすいが。
◇◇
Linuxが成り立つのは、インターネットの共有は結構面白くて、
GNUはストールマンが勝手にコマンドとコンパイラとエディタを作っていて、
トーバルズがインターネットに投下したカーネルが、みんなの反響を呼び、
適当にハッカーが集まって作っていると、色んなプロジェクトが出来て、
それを全部GPLの所有にして、金が無く、インターネットで平等分配していた。
◇◇
Linuxはクズだ。論外なのに、グーグルなどで多い。
FLOWと良く似ている。
◇◇
Linuxは、どのインターネットでも悲惨だから、やめた方が良い。
マイクロソフトやアップルの世界が分からなくなる。
悲惨に、カーネルのコードは、見ると誰でも分かるのが、Linuxだ。
なぜか、Androidのカーネルとして採用されている。
◇◇
最近、右翼になったが、昔から自由、平等の左翼だ。
オープンソースは普通だ。Mac OS XもBSDだ。サーバーは、Linuxが普通だ。
コードは、Cではポインタがオブジェクトを持ち、それぞれの関数の中で、同じデータを保持する。
メモリともいうが、ポインタだけをコピーした方が楽だ。
あとは、変数名で分かる。
普通、返り値と引数を統一してオブジェクト指向を行う。
Getを行い、ポインタを取得する。=で代入しても良い。
それから、繰り返しと代入がある。辿って分かれば良い。
Javaは、特に同じだが、賢い。C#も、特に同じだが、さらに機能が多い。
◇◇
普通の機械の方が良い。時計や車の方が面白い。
人間は、キモイ方が賢い。
どのように行うか、その原因はなぜか、を考えれば良い。
かもしれない、おそらく、はずだ、と考えれば良い。
Windowsは、中身が見れないのが悪い。GNU/Linuxのハッカーが多いのは、中身が見れるから、誰でも分かるからだ。
それはどこから来たか。それは、誰がどうしたか。
◇◇
Linuxは、UNIX互換OSで、コマンドラインでは安定して動く。
フリーで、オープンソース、みんなで作るのが賢い。
作り方を馬鹿とはいうが、Wikiも似たようなものだし、Windowsだって同じように作っている。
プログラミングでは、データを関数で運んで、処理する部分で処理している。
UNIXは、入出力とパーミッション、マルチタスクとファイルシステムのシンプルなOSだが、
LinuxはUNIXよりは賢い。
他のオープンソースなソフトウェアは、スクリプト言語のPerlやPHP、コンパイラのGCC、
画像編集ソフトのGIMP、オフィススイートのLibreOffice、OSのFreeBSDやOpenSolarisなどがある。
あとは、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.orgやMozillaのWindows版は意味がない。Windowsが全部やっているのに、MS/Windowsと戦っている。
オープンソースは全部GNU/Linuxの方が良い。みんな同じオープンソースコードだ。
Linuxは醜い。コンパイラ、ライブラリ、カーネルとシステムコールに、インタープリタ、X、GTK+がある。インタープリタがXとGTK+を表示していると、最悪に見える。
給与を払わない。Linuxのものになる。誰も更新していない。
QtとGTK+アプリケーションが共存していると、キモく見える。KDEとGNOMEが戦っていると、最悪に見える。
Androidに統一すべきなのだ。
ディストリビューションは、Red Hat、SuSE、Debian、Ubuntuと無数にあるのが悪い。パッケージ管理システムも、バージョン管理も馬鹿に多い。
Windowsみたいに出来ないなら、しなくていい。何かになるように見える。
◇◇
データを運んで、処理して表示する。データは、メモリのどこかにあり、たまに操作する。
◇◇
世界と違うになる。
可能性を考える。
することを考える。ただ従うだけでなく、何かの決まりごとや原因と結果を、たらればで分かる。
Linuxは、みんなで作っているのが賢い。システム的には、シェルスクリプトの技術と、aptitudeが賢い。
あとは、ウィンドウを管理しているXと、その上の技術が賢い。X以上がカスタマイズできる。
GNOMEとKDEは、コンポーネント技術と見た目、統一性が賢い。
サーバーサイドは、無数に技術がある。スクリプトと言語、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はやめた方が良い。
倒さないが、使わない方が良い。
狂って、後でつらくなる。
つらいから、悪い。