hirax.net::Keywords::「プログラミング」のブログ



2010-04-10[n年前へ]

VHDLで"Hello World"!? 

 スラッシュドットの「人気のプログラミング言語、Cが4年ぶりに1位に返り咲く」中のコメント「Re:群雄割拠と言う感じ」から、WikipediaのVHDLの説明を読みに行く。

 …VHDLのコード例が「Hello World」と「フィボナッチ数列」というWikipediaのエントリは、VHDLの説明として間違っているとしか思えません…
 VHDLの説明中の一番最初のコード例が"Hello World"というのは、それをネタとして眺めてみれば、とても面白い。
-- VHDL example programme: hello.vhd
 
use std.textio.all;
 
entity hello is
end entity hello;
 
architecture Wiki of hello is 
    constant message : string := "hello world"; 
begin
     process is
        variable L: line;
    begin
        write(L, message);
        writeline(output, L);
        wait;
    end process; 
end architecture Wiki;

 ちなみに、英語版のWikipediaのVHDLの説明を眺めにいくと、そこには現在VHDLが使われる用途を意識した、単純な例が並んでいる。

2010-04-12[n年前へ]

Kindle Development Kit (KDK) で NES エミュレータ 

 電子書籍Kindleの開発キットを、公開を待ち切れず、ドキュメントから(をもとに作り出し、

 ちなみに KDK は Javadoc がすでに公開されています。世の中にはいろんなものが落ちていまして codavaj という Javadoc リバースエンジニアリングツールが存在します。codavaj ? Javadoc の逆かい!素敵なネーミングセンスです。
 codavaj は Javadoc を読み込んで Java プログラムのスケルトンへ変換することが可能です。KDK が手に入らないのなら自前で実装します!
 さらに、その開発キットを使いファミコン(NES) エミュレータを実装してみたという、とてもワクワクさせられる話。
 新しいプラットフォームが出たら、まずしなければいけない一番大事なことを忘れていました…orz
 そうです、 NES エミュレータを移植することです。

2010-07-21[n年前へ]

iPhone プラグラミングならぬドラミング 

 少し前、iPhoneプログラミングを始めたいと考えて、iPhone 3Gを知人から譲り受けました。iPadやら、iPhone 4を使う人も増えている今日この頃ですが、時代遅れのiPhone 3Gをとても楽しく使っています。

 といっても、使っている時間のほとんどは、Free Drum Pad IIに費やされています。iPhoneに入れた音楽を聴きながら、iPhoneの画面上のハイハットを叩き・バスドラムを叩き・スネアを叩き・時折シンバルにスティックならぬ指を伸ばす・・・という快感にひたっています。

 本当ならば、iPhone SDKを学びながらキーボードを叩くはずが、目をつぶってパッドをサルのように叩いています。iPhone プラグラミングをするはずが、iPhone ドラミングにはまっているのです。「プログ」と「ド」というたった3文字だけの違いですが、何というかそれは、実に似て非なるものです。。

 音を出して奏でる、というのは、とても気持ちが良いものだ、と感じます。というわけで、「スキマスイッチの全力少年 」を聴きながらiPhone ドラミングに戻ることに、じゃなかった…iPhoneプログラミングに戻ることにしましょうか・・・。

2010-09-22[n年前へ]

「すること」を考えることと、「その実装」を考えることと、「大量生産する」こと、と 

 「目から鱗」という言葉があります。そんなことを感じた時のひとつに、「(実装の仕方はわかるけれど)、何をどう作るかという根本的ななことは、私にはわからない」という言葉を聞いた時があります。その言葉を発したのは、あるMachカーネルのOS日本語版作成をカリフォルニアで作成した人でしたから、その言葉を聞いた瞬間少し意外に感じました。けれど、その人が何を言っていたか、少しだけ、わかるような気もしました。それは、「すること」を考えることと、「その実装」を考えることは必ずしも同じことではない、ということです。あるいは、そのふたつを同時に行うことができる人も(まれには)いるけれど、多くの場合は、その片方しかできないということでした。

 「すること」を考え・作り出すためには、今ならば、数学か物理を自由に扱うことができないといけないようにも想像しますし、「その実装」を考え・作り出すには、(ある程度の数学と)プログラミング能力が必要とされるような気もします。そのどちらか片方が難しい・簡単ということはないのだろう、と想像します。それぞれのことが「できる」ようになるためには、きっとかなりの時間を必要とすることなのだろうと思います。それは、(設計から製造までの各過程をできる人の比率こそ違うかもしれませんが)機構・機械システム作成でも言えることかもしれません。

 自分が何をしたいのかということと、世の中が何を求めているのかということと、そして、自分が何をできるのか、という3つの力のバランスで、そんなコックリさん的な解として、どんな道を選ぶかが決まるのだろうか、と思います。かといって、そんな三体問題には一般解はないわけで、結局のところ、自分の気持ち次第というのが本当のところ、かもしれません。

 何にせよ、作りだしたものがすべて、というひとつの基準で判断されることなのかもしれませんが…。

2011-08-20[n年前へ]

Topcoder クックブック 

 オライリーから、プログラミング・コンテスト"Topcoder"をテーマにしたTopcoder Cookbookが出版予定になっています。発売されたら、早く読んでみたいですね。



■Powered by yagm.net