日記帳だ! with Tux on Libserver

二度目の大改造!! 日記帳…か?を継承し、より柔軟でパワフルなBlogに変身しました。

RSSに対応しています。リンク・コメント・トラックバックは自由にしていただいてほぼ問題ありません。
RSS購読方法、僕のリンク・コメント・トラックバックについての考えを読むことをおすすめします。

<< 過去

未来 >>

特に目立つICカードPiTaPa

最近、Jスルーカードとパールカードを販売停止するという貼り紙が貼ってあるね。
パールカードは近鉄電車の商品券にあたるもので、
まぁ確かに乗車券も特急券も買えるけど、買うことにしか使えないのが欠点。
だからか利用者が少なかったのかも知れない。
特に特急券はチケットレス購入すればプレミアのないプリペイドカードの価値はなかろう。
Jスルーがなくなる理由はICOCAで代替できるから。
まぁ現実を見れば、近鉄のほとんどの駅でICOCAのチャージはできるし、
近鉄だけならば、スルッとKANSAIを使う方が有益なので、なるほどこれも一理ある。
ところで、PiTaPa、便利だと思いますよ。
僕の財布の中にはICOCAがあるけれど、そもそも定期券と併用するときは使えないので使う頻度は少ない。
とはいえ、使えるときはそれなりにあります。
けど使うことは少ないですね。というのもチャージするのめんどくさいから。
頻繁に使う人ならともかく、残高が減って、今度金を持ってきてチャージしなければと思っても忘れて、
なんか残高が足りない気がするけど、めんどくさいから切符を買えばいいと…
しかし、PiTaPaなら残高が足りない気がすることはありえないと。
あと、割引が効けばさらにうれしい。
近鉄だと月当たり3000円超えないと効かないけど、どんな区間まぜこぜでも効くのでいいのかもしれない。
家族で、僕だけPiTaPaを持っていません。
まぁ作ってもよかったんだけど利用頻度があまりに低いので作らなかったと。
その背景にはIC定期券が実現されていないことがあるわけだ。
当初PiTaPaは区間指定割引の制度で定期券の代わりになると思ってたらしいが、
これが結構難しかったらしく、あらかじめ定期券をPiTaPa決済などで購入してやる方がいいとなったらしい。
まぁ、しかし6ヶ月定期の6分の1の金額を上限とする制度にすれば不満もなかったと思うが…
ところが近鉄がその手の制度に対応してないんだよね。
なので磁気定期券を6ヶ月づつ買って、毎日改札機に通してる。
乗り越し分は現金で精算すると。まぁこうなるわけだ。
しかし、もしIC定期券など始まって、一体的に取り扱えるようになれば、かなり便利ですね。
あとは、JRで全くチャージ不要になればさらにいいね。
まぁオートチャージ機能ONにすれば、チャージの必要はほとんどなくなるけど。
JR以外の改札を通過するときには少なくとも1000円の残高はあるから、あまりチャージしなくてもいいようです。
とはいうけど、全く不要なのはかなりいいと思うけどね。
そういえばSMART ICOCAというのがあるが、これはチャージ機に出向かないといけない。
チャージ機に入れるだけ。それだけでチャージできる。
J-WESTカードと同時に申し込むか、既存のクレジットカードのひもづけるかはともかく作れる。
まぁしかしホームにもあるぐらいありふれた機械なので、まぁ気楽ですけどね。
けどPiTaPaのエリアでは現金チャージはできるかもしれない(できるとは限らない:奈良交通など)けど、クイックチャージは不可能。
どうせなら、JRもPiTaPaに参加して、J-WESTに付けることができるカードをPiTaPaにすればいいのにね。
と思うんだけど、ICOCAを提唱してきた彼らには難しいかも知れません。
特に定期券のあたりがね。どうもPiTaPaの定期券は1つだけ搭載できるらしいのだが、それでは困るか。
あと、中京圏でもJR以外がICカードを導入しようとしてるらしいが、それは全く新しく作るそうだ。
あんまり乱立するとめんどくさいけどね。
Author : Hidemaro
Date : 2008/07/21(Mon) 21:56
交通 | Comment | trackback (0)

グイグイ走ってくれるならそれでいいけど

今日はちょっとお出かけ。
軽自動車もパワフルなもんです。
坂道を60km/hで平然と走っていくあたり。別に普通か…
排気量ってなんなんだろうね?いやシリンダの動く体積なのは知ってるよ。
よくわからんけど税金が安いのはいいことかな?
さて、道路を走ってると、やたら左折可が多い。
まぁ左折可という標識は結構レアなんですけどね。
これは、赤信号であれど、左折はできると。
歩道の左を歩くことにして、左折するとき信号なんて関係ない。
それに似ていて、左折可があれば車がそうやって走れると。
標識は一方通行の白・青を反転させたもの。
これを角に張っておけばいいということだ。
まぁ必ず使えるわけではないけど、結構有効に使われてますね。
そうそう、話は変わるけど、道路の黄色の線だが、
調べてみたら、追い越しのためのはみ出し禁止という意味らしい。
バスポケットのないバス停留所に止まってるバスを追い越すのは、追い越しに当たらないとのこと。
すなわち、追い越さないのならば、黄色の線はどうでもいいということか?
まぁしかし、その意図からすれば、はみ出るなという意味だろう。
そして、どうも車線変更も禁止らしい。
だいたいそんなところは、車線幅が広いので、はみ出る必要なんてないはずだし。
まぁそれはともかく、毎度思うが、車で行くと、駐車場がめんどくさそうですね。
しかも、明らかに電車より短縮されたルートなのにそんなに速くはない。
まぁDoor to Doorなのが利点か?
まぁそういうのが一般的な意見だが、どうも揺れるのはよろしくないな。
そりゃねぇ、エンジンなんて載せてるんだからね。
誘導モーターを載せている電車より揺れるわな。誘導モーターなら揺れないのかは知らないけど。
Author : Hidemaro
Date : 2008/07/20(Sun) 23:47
交通 | Comment | trackback (0)

コンピュータで文書を書くのは都合がいい

C#勉強用の資料が結構書けた。
いろんな人に、君は文章をたくさん書く人だと言われるが、それも納得のいく話だ。
まぁしかし、無駄な文言が多いのは確かやわな。
読書感想文を書いていたとき、文字数オーバーばっかり起きて、なんかばっさり削ってたが、
しかしもっとスマートに書けば違ったかも知れない。
まぁしかしあれでもかなりスマートに書いてたつもりなんだけどね。
ここの記事にしてもそうだが、なんか口語そのままで書くからえらく無駄が多い。
文章の中に、自分の発言に対するツッコミが入ってたり…
妙に冗長な文章だったりする。と、言う文章もかなり冗長に違いない。
ちなみにその資料もかなり口語に近い。まぁそういうもんです。
レポートにしても、この資料にしてもOpenOffice.orgを使って作成している。
まぁ基本的にはWriterですね。
OOoは非常に扱いがよいと思う。まぁ慣れなんですけどね。
Microsoft Office 2007の操作が以前のバージョンとかなり異なるというのもありますが、これも慣れ。
まぁしかし、数学的帰納法を使ったハゲの証明にしてもそうですが、ちょっとづつ変えれば変わったように見えないと。
しかし2007になってあまりに変わったので混乱する人が多いと。
扱いがいいもんだから、書くことに集中できて、すごく早く書ける。
これは驚いた。普段は実験結果とにらめっこしながらだが、
今回は文章を書くだけ。ちょっとソースコードをコピーしたりする以外は。
だからひたすら書いてたんだよね。まぁそんなわけで…
まぁとはいうけど、2日で40KB(Shift_JIS)というのは多いのかね。
そんなに多くはないと思うわ。
しかし、原稿用紙をいっぱいまで詰めて50枚程度だから、そう考えるとなかなか。
まぁしかしコンピュータの上の文章を原稿用紙に換算するのは間違いに違いない。
まぁこれだけ書いておいて、まだ資料は完成とは言えん。
けど山場は越えたかなと思ってる。
がんばってやっていこうか。
Author : Hidemaro
Date : 2008/07/19(Sat) 23:53
コンピュータ・インターネット | Comment | trackback (0)

夏休みの入り口に思う

夏休みですね。
そして夏休みになってすぐに、部の勉強用の資料を書いているという。
みんなでC#の勉強をするぞということです。
実は回路計算プログラムはそのために書いてたのですが、
他の学科、もっぱら情報工学科の人が、交流回路が意味不明であるというので、没。
あれは複素数を使うから、演算子のオーバーロードができておもしろいのに…
直流回路で同様のものを作成することになりそうです。直流だったらただの実数だからわかりやすいですね。
毎度のことですが、夏休み前だからといって何かあるわけではありません。
金曜の8限目の授業が終わっただけです。
もちろん、よい夏休みをとか言ったりもしましたが、しかしそうでもありません。
やっぱり前期の途中だからですね。
まぁしかしこれは一方で時間の節約でもあるので、まぁ一概に悪いとも言えませんね。
なんか予定を見ると、夏休みの頭の方が予定で埋まってる。
ある意味これはすごい。予定で敷き詰めれている。
まぁ、まだ決まったわけじゃないけど、夏休みの初めの方は学校に出かけることが多そうです。
7月中は駐輪場も生きてるので、学校にも行きやすいですね。
ついでに宿題もありますからね。こいつも初めの方でやってしまえとなるわけだ。
まぁこうなると、夏休み当初は極端に休みっぽいわけでなく、急に気が抜けると。
そうもなりそうなもんだな。それはそれでいいと思いますよ。
Author : Hidemaro
Date : 2008/07/18(Fri) 23:56
日常 | Comment | trackback (0)

ローレンツ力の向きは、こっち?こっち?こっち?

ところで、電流はプラスの電荷が流れることと言われる。
プラスの電荷というのは、電子の抜けた原子のことだと。
そう、プラスの電荷が流れるということは、電子が抜けて、反対に流れていると言うこと。
この事実はあまり気にしてないけど、たまに気にしないとえらい目にあう。
その一つがローレンツ力を考えるとき。
物理の授業で出てきたわけですが、まぁ要領を得ない。
さて、上向きに磁束密度Bで、磁束があったと。
ここで、手前から奥に向けて導体棒がある。これを左に動かす。
導体棒の中にはたくさん電子がある。こいつらが左に動かされると言うことになる。
ところで電流はプラスの電荷が動くこと、そして、電子が反対に動くこと。
だから、電子が左に動いたということは、電流が右に流れたということ。
わかりにくいですね。しかし、どうもこういうことらしいです。
さて、ここでフレミングの左手の法則を使って、電荷に働く力の向きを考える。
なんかおかしい気がするけど、磁界の中に電流の流れた棒があると力を受けるというけど、
電流が力を受けていると考えれば、確かに電荷が力を受けるというのも説得力がある。
ところで教科書やらを見ると、プラスの電荷が力を受けると書いてあるな。なぜだろう?
電子が動いたから受ける力なら、電子が受けそうなもんなのだが…
それで考えるとプラスの電荷には手前に向かって力が働く。
この力をローレンツ力と言うらしい。
速度をvとして、電束に直角に動いたとき、電束にも移動方向にも直角な方向にBveの力を受ける。
-eは電子1個の電気量ね。
ローレンツ力で電磁誘導を説明できるらしい。
さて、+eの電荷が、手前に向かってBveの力を受けている。
導体棒の長さをLとすると、一番奥に置いた電荷は、手前まで距離Lの間、Bve×Lの仕事をしてくれる。
ということは、奥の電荷は手前よりもLBveだけエネルギーが高いと。
それで電圧というのは、1[C]あたりのエネルギーだから、eで割ると、BvLとなる。
というわけで、手前より奥の方がBvLだけ電圧が高いということになる。
混乱することだらけですね。
これは宿題を考えてたとき、なんか訳わからんことだらけだから、
なぜだと思って、教科書を改めて見返したら、どうもそれっぽいことが書いてあって、
さらに電磁気の教科書も見ると、さらに説得力があって、なるほどと。
授業ではそんなことを気にする余裕などなくて、こういうものであるというぐらいだったもので。
しかしよく考えてみると、なんか大切な事が抜けていたと。
もしかしたらそのことを暗示してたのかも知れないけど、気付かなかったんだね。
まぁいつ気付くかの違いだとは思うけど、早い内に気付いてよかったね。
そうそう、ローレンツ力で発生する起電力の大きさを知るのに使うのが、フレミングの右手の法則なんだと。
なるほど、そういうことですか。
Author : Hidemaro
Date : 2008/07/17(Thu) 23:56
電気・数学・物理 | Comment | trackback (0)

もうすぐ夏休みなのはありがたいこと

昨日言っていたプログラムはもう完成した。
抽象クラスを2つも作ったのは初めてだな。抽象クラスっておもしろいですね。
抽象クラスは穴埋めすれば完成するテンプレートみたいなもんですからね。
ポリモーフィズムをよく感じることができる。
直列回路にしても並列回路にしてもいくつか素子を登録して使うことは共通している。ここは抽象クラスで作る。
具体的な登録方法は、クラスの作者が決めることだ。
回路の動作は回路によって違うので、これもクラスの作者が決めること。
と考えると、なかなかうまいこといく。
これは夏休みの課題じゃないけど、ぼちぼち出てますね。
力が付く演習問題と名付けられたプリントの束をもらったり。
これは腕の力が付きそうだと言ってみたりもしたが、まぁそれはともかく、あるもんです。
ここぞとばかりにレポートを書いてこいというのとかね。
ところで、二学期制の学校で、この時期に夏休みがあるというと、まだ前期は終わってないんですね。
なので、非常に長いお休みの宿題と考えることができます。
宿題があるのも当然ですね、わかります。
夏休み中は、それなりに学校に行くことになりそうです。
主に部の加減ですが、ちょっと学校に奉仕してみたり、まぁありそうです。
そんなわけで、今までほど暇ではないよと思ってる。
もっともいままでが暇すぎただけで、それでもすごい暇。
そんなわけでいろいろやっていきたいもんですね。
いろいろ思ってるところはあるので、実行できればいいですよね。
せっかく、こんな暑い時期に休みがあるんだから有効に使わないとね。
夏休みまでに前期を終わらせようとして、8月になってから休み開始で、9月末までとは風情がない。
風情を選ぶが故に学校は混乱するが、気分はいいですからね。
Author : Hidemaro
Date : 2008/07/16(Wed) 23:58
日常 | Comment | trackback (0)

見えるオブジェクト指向なんてうまい話はなかなかないか

懲りずにC#で交流回路計算機を作り始めた。
なんでこんなもの作りたくなるのかというと、そりゃオブジェクト指向っぽいからだろう。
まず、回路素子。
こいつらは、インピーダンス・アドミタンスがある、電流を流せば電圧降下が起きる、電圧をかけると電流が流れる。
これは回路素子のお約束。そのお約束を抽象クラス か インターフェースで表してあげる。
すれば、3つの回路素子を自在に組み合わせた直列回路というのを組み合わせた並列回路も作れるかも知れない。
次に、電圧・電流・インピーダンス・アドミタンスを表すのに使う複素数。
これの計算はかなりめんどくさい。
けど演算子のオーバーロードで、かなりスマートに使うことができる。
と、まぁ複雑な回路でなければ解けるだけの仕組みは簡単に作れますね。
実際、1時間少しで完成した。まぁ不完全な部分はあるけど。概ねOKですよ。
もっとも、複素数クラスは以前作ったものを一部改造しただけだけどね。
あとはファイルを読み書きする仕組みを作ればいいかなと思ってる。
こんなファイルを読み込みたいなと。
E 100
f 60
Begin Seri
R 100
L 50m
Begin Para
L 100m
Begin Seri
L 10m
C 50u
End Seri
End Para
End Seri
初めに電圧・周波数を設定し、1行1素子で書いていくと。
Begin Seri~End Seriの間がそれぞれ直列、Begin Para~End Paraの間がそれぞれ並列。
まぁ多分これでいけるかなと。
これだと、スペースでLと10m、BeginとSeriのように分解するだけで解釈できるから、やりやすい。
値にk,m,u,n,pを付けるとSI接頭語のk(キロ)・m(ミリ)・μ(マイクロ)・n(ナノ)・p(ピコ)に相当する倍率をかけると。
これも装備できればかなり強いと思う。
かの有名なSpiceみたいな高級さはないし、性能も低いけど、
結構わかりやすい書き方だと思うんだよね。
インスタンスに命令するだけで適当に動いてくれるのは本当にありがたいですね。
再帰的に物事をやっていくのって結構めんどくさいけど、
インスタンスに「やれ」と言ったら、そこから別のインスタンスに「やれ」と言えばいいと。
だから使う方も簡単だし、作る方も簡単。なかなかこんなものはないかと。
階乗を再帰的に関数を呼び出して求めるという変な例があるけど、
あれを作るのとさほど難しさは変わらないというおもしろいこともありましたからね。
そんなのを活用してやっていけばいいかなと。
Author : Hidemaro
Date : 2008/07/15(Tue) 23:06
コンピュータ・インターネット | Comment | trackback (0)

お手軽であるということは大切である

実は、夏休みの課題で、
テキストファイルにデータがたくさんあるので、それの平均値やらを求めろと。
平均値だけならかなり簡単だが、標準偏差も求めんといかんので。
そんなものは表計算の関数を使えばすぐ終わるが、まぁそこはきちんと考えなさいと。
で、Perlでやったと。3分ぐらいでとりあえずは作れたから、結構早いと思う。
ただ、ちょっとこのまま提出するのはあれなので、バグ取りに時間を食ったけど。
そもそも、Perlというのはかなり下品だけど使いやすいものです。
それは配列や文字列の扱いにしてもそうで、やはり扱いやすい。
Cではそんなもの扱おうとすると、安全装置ばっかりになってえらくめんどくさい。
そんなわけで、Perlで書いたわけだ。
さらにperl 5.8以降、マルチバイト文字列への対応がよくなったので、これを使わない理由はないですね。
そのへんのお話は、以前書いた、「マルチバイトを知ったperlは便利」の記事参照。
ところが実はこの記事には少し誤りがあったというわけで書いておきます。
#!/usr/bin/perl
use encoding 'shiftjis';
#binmode(STDOUT, ":encoding(shiftjis)");
#binmode(STDIN, ":encoding(shiftjis)");
UTF-8以外で書いたPerlのスクリプトの場合注意してください。
binmodeは書かない。use encodingで示したのにセットされます。
しかし、それでは都合が悪いこともあるかもしれない。
もちろんUTF-8でスクリプトを書けばいいのだけど、こんな解決法もあると。
use encoding 'utf8',STDOUT=>'shiftjis';
バグ取りと言ってたけど、この事実を知らなかっただけです。
ちょっと注意してください。
その点以外は実にスムーズでして、foreachを活用してうまいこと書けました。
もっとも、今回のはutf8フラグを立てる必要はなかったんだけどね。けど気持ち悪いし。
ところで、Cで書くと、安全装置だらけになると言いましたが、実際の様子をみればわかるでしょう。
fp=fopen("data.txt","r");
if(fp==NULL) abort();
while(!feof(fp)){
str[0]='\0';
fgets(str,32,fp);
l=strlen(str);
if(l==0) continue;
if(str[l-1]!='\n'){
if(!feof(fp)) abort();
}
if(sscanf(str,"%d",&v)==1){
a+=v;
n++;
}
}
まず、この前提として、1行に1つだけ整数が入ってると。
もし1行に2つあっても1つしか読み取らない。そんな前提なのでやたらめんどくさい。
安全のためにはこちらの方がよいでしょう。
まず、ファイルポインタがNULLでないか確認。ここでNULLならabortでとりあえず待避。
fgetsの話は以前もしたように思うけど、getsではメモリ破壊が起きてしまう。
だからfgetsを使って、メモリ破壊を防ぐ。
すると尻が切れる可能性がある。なので、fgetsの性質で、最後に改行も入るというのがあるから確認する。
それで改行があるか確認して、なければabort。
それでsscanfでその文字列を解析する。ここで1つ読み取ることに成功しなければ値を加算しない。
ところがこのままでは最終行付近でおかしなことが起きる。
まず、最終行が何もないとき。だから、最後のデータのあと改行だけで終わってるときです。
このとき、なぜかfgetsで読み取らない。それで文字列の内容が変わらない。なので同じデータを2回読む。
だから、1文字目のところを'\0'にして、強制的に文字列の長さを0にして、0のままならやり直しと。
といっても、これは最終行以外はありえないことなので、実質そのためだけですね。
改行の後に余分な空白などがあったら、そこから整数が読み取られなければ、値を加算しないだけで特に問題なし。
もう1つは最後のデータのあと改行無しのとき。このときは最後に改行が入らない。
しかしそのときはEOFに到達してるはずだから、確認して、到達してなければabortと。
ここまでするかというかも知れないけど、まぁこの程度はしないといかんのよね。
今回はCでやること前提のデータなのでまだましですが、
1行に2つ1組あるときとか考えるとなかなかこうもいかんでしょう。
Perlであればかなりこの辺の融通は効きますね。
文字列処理は非常に強いから、かなりいける。
まぁとんでもない性能を要求するならともかく、Cでやるメリットは少ないでしょう。それにそんなことはない。
ならPerlやらでパッとスクリプトを書いて、うまいこと動いてくれることを期待して待っておけばいい。
本当にCでプログラム書くと、しょっちゅうメモリ破壊起こすからね。
少しならあまり影響ないとはいえ、それは偶然。やはりできるだけの工夫はしないとね。
まぁ、これについてはCの配列の仕組みは極端にプログラマ任せなせいだけどね。
その辺管理してくれるものはいいし、Perlの配列は可変長だからね。これもいい。
Author : Hidemaro
Date : 2008/07/14(Mon) 23:31
コンピュータ・インターネット | Comment | trackback (0)

コンピュータに原油を買いたいと言うと買えるらしい

世の中には先物取引というのがある。
これは、例えば米ならば、未来の米を今売り買いすること。
江戸時代の大阪にあった堂島米会所が世界最古の先物市場らしい。
まぁそれはともかく、これの使い道は、今後売り買いするものの値段を早い目に確定させること。
というわけで調べてみたが、結構ありがたいことがわかった。
例えば、農家がこの先、米の値段が下がりそうで怖いと思った。
そんなとき、先物市場で未来の米を売る。
ところで先物取引は最近流行のFX(外国為替証拠金取引)と同様に証拠金というのを使っている。
だから売ったところで全額もらえるわけじゃなくて、ある程度は市場に預けておく。
まぁこのことはまた後に。
それで、米を実際に売る。それで受け取った金で、先物市場に売った米を買い取る。
売ったものを買い取る、買ったものを売り払うという風にするから、未来の米を売ったとしても、実物の行き交いはしない。
それが先物取引だと。まぁ別に実物の行き交いがあってもいいんだけどね。
ところで、ここで米を買い取るまでの間に、急に米の価値が上がったとする。
すると米を買い取れなくなる。そんなときに備えて証拠金というのを預けてあると。
価値が上がったら、米を買い取るとき、売ったときと買ったときの差額が証拠金から取られて返ってくる。
逆に価値が下がれば、米を買い取るとき、売ったときと買ったときの差額と証拠金が返ってくる。
さらに価値が上がって証拠金を超えたら、証拠金を積み足さないと、強制的に買い取られるらしい。
逆に、米屋が、米の値段が上がりそうで怖いから、未来の米を買う。
そのとき、なんぼか証拠金を払うだけでいい。
実際に買うときに、先物市場に米を売って、その金で実際の米を買うと。
それで、もし値段が上がれば、証拠金と買ったときと売ったときの差額が返ってくる。
もし値段が下がれば、証拠金から買ったときと売ったときの差額が取られて返ってくると。
そんな風に、未来の怖いことに備えるための仕組みらしい。
もちろん、予想より未来はいいことがあるかもしれないけど、これ以上悪くはならないという意味では効果があると。
まぁそう考えるとなかなかありがたいものですね。
もし、米の値段が上がると思えば、米屋が先物市場で買いまくるから、米の値段が上がる。
もし、米の値段が下がると思えば、農家が先物市場に売りまくるから、米の値段が下がる。
まぁこんな調子で、米の値段が決まっていくと。
ところで、最近燃料代が上がってるけど、原因は原油の値段が上がってるからだと。
そりゃ、車動かすにはガソリンなり軽油がいるし、発電所動かすには重油やらいるし、
ウランを運ぶにも船を動かさないといけなくて、そりゃ重油がいる。
ちくわを作るにも、スケトウダラを獲るには船を動かす、だから重油がいる。
工場を動かすにも電気を食う。それで電気を作る金も上がってると。だからちくわの値段が上がるわけですね。
まぁ原因はいろいろあるんだと思うよ。採掘コストが上がってるのかも知れないし。
しかしどうもニュースに言わせればそんなことは些細な問題っぽいです。
ここのところ、どうも原油が上がってると。そうすれば、今原油を買って、後で売ると儲かると思うわけだ。
それで、それを投資に使う人がいると。
しかし、それなら限界は来そうなものだが、さらに厄介なことに、原油の生産量が増えないと。
まぁこのまま放っておけば、さらに値段が上がって、儲けも増えると思ってるのだろうかな。
誰でもわりと簡単に作れるものなら、そうもいかんと思うのだが、原油が掘れるところは偏ってるからね。
ついでに需要も増えている。
まぁなんやかんや言うけど、どうも値段は上がるしかないらしいです。
こうなると、原油を買う量を減らすようにする努力をしないといかんとなるわけだな。
石炭の天ぷらを作ってみたり、藻を肥えさせてみたり、原子力発電所を安定させる工夫をしたり…
今までならこんな工夫は意味がなかったかもしれないけど、原油の値段と差が小さくなってきたのかも知れない。
まぁいろいろしてるわけだ。こうすればとりあえず需要は減らせるんじゃないかと。
とりあえず石油の敵をがんばって作っていきましょうということです。
実用的なのができるのを期待するしかないでしょう。
Author : Hidemaro
Date : 2008/07/13(Sun) 18:11
社会 | Comment | trackback (0)

コンピュータに自然な日本語で命令できるらしい

早速だが、この文章を読んで欲しい。
「何の階乗を求めますか」と尋ねる。
「{それ}! = {それの階乗}」と言う。
●階乗(nの)
 Sは1。
 1からnまで繰り返し
  Sにそれを直接掛ける。
 Sで戻る
これを見たら大体わかりますよね。
これはなでしこのプログラムですよ。
日本語を用いたプログラム言語で、その昔ひまわりと呼ばれていたものの改良したもの。
尋ねた結果は、それという変数に入っていると。
なんかこの辺はPerlに似ていますよね。それと$_って似てるよね。
それで関数を作ってみたのだが、これが結構おもしろい。
●がユーザー定義命令の印。ユーザー定義命令というけど、関数といいたくなるよね。
、インデントの間が関数であると。そう、なでしこはインデントでいろいろ示す。
そういえばRubyもインデントで示すよね。これはなかなかいい。
()内は引数リストで、(a,b,c)などと書くこともできるけど、せっかくだから日本語的に書きたいよね。
で、助詞を区切りにつかうと。助詞のことを考えながらやれば引数の順番を入れ替えても動く。
ちなみに助詞は
とは、は、について、ならば、なら、でなければ、から、まで、までを、までの、で、を、の、が、に、へ、と、して、だけ、くらい、なのか、として、より、ほど、など、って、では、て、
らしい。結構いろいろあるのでおもしろいね。
繰り返しは言うまでもなくfor文的なもの。○○で、と書くとカウンタ変数を指定できる。
「Sで戻る。」というのはCなんかのreturn S;に相当するもの。
戻るとだけ書けば、それで戻ると解される。
と、作るときは気にするかも知れないけど、見るだけならわかりやすいですね。
実は趣旨もPerlに似ていて、作業をスクリプト化して便利にするのが目的。
まぁそんななので、見た目がわかりやすいようにしたとのこと。
実はかなり機能は豊富でセッター/ゲッターとか、イベントとか、グループとか。
イベントはPerlのサブルーチンのリファレンス相当のもの、
グループはオブジェクト指向のクラスのこと。だけど、イベントを持つ構造体みたいなものかな。
まぁこの辺も、Perlのパッケージに似てるような気がする。あれよりは強力か。
せっかくだから試してみた。
マイテキストとはファイル。
マイテキストのファイル名は「C:\test.txt」。
マイテキストの置換元は「あああ」。
マイテキストの置換先は「ううう」。
結果はマイテキストの置換。
結果を表示。
■ファイル
 ・ファイル名 ←ファイル名設定 →ファイル名取得
 ・{非公開}_ファイル名
 ・{非公開}データ
 ・{非公開}ファイル名設定(値)~
   _ファイル名は値。
   データに_ファイル名を毎行読む。
 ・{非公開}ファイル名取得~ それは_ファイル名。
 ・置換元 ←置換元設定 →置換元取得
 ・{非公開}_置換元
 ・{非公開}置換元設定(値)~ _置換元は値。
 ・{非公開}置換元取得~ それは_置換元。
 ・置換先 ←置換先設定 →置換先取得
 ・{非公開}_置換先
 ・{非公開}置換先設定(値)~ _置換先は値。
 ・{非公開}置換先取得~ それは_置換先。
 ・置換~
   もし、_ファイル名が空ならば
    「ファイル名を設定してください」と言い、戻る。
   もし、_置換元が空ならば
    「置換元を設定してください」と言い、戻る。
   もし、_置換先が空ならば
    「置換先を設定してください」と言い、戻る。
   結果は「」。
   データを反復
    それに改行を追加。
    それの_置換元を_置換先へ正規表現置換。
    結果に「{それ}」を追加。
   結果で戻る。
■がグループの宣言、・がメンバ変数やメソッドの宣言。
メソッドはイベントで書く。
・書く~○○する。
という風に書く。~でイベントと実際やることを結びつけると。
←でセッター・→でゲッターを指定する。
セッターは引数に値を1つ取って指定すると。
ゲッターは得る値をそれに入れてあげると。
{非公開}というのもあるので、なかなかよいですね。
ただ、日本語はいい加減にも書けるけど、その分うまく書かないとうまく解してくれない。
ひたすら関数的に書いていけばいいプログラム言語とは事情が違う。
BASICは英語のように書けて、お話しするようにプログラムが書けると言われている。
まぁ実際はそんな気はしないけど、そうなのかもしれない。
なでしこはあまり使わないけど、たまに使うとおもしろいですね。
Author : Hidemaro
Date : 2008/07/12(Sat) 23:42
コンピュータ・インターネット | Comment | trackback (0)

Tools