2008-01-01から1ヶ月間の記事一覧

ふお! re:だふのわるだくみ

ひょっとしていそぴーとかid:puruhimeさんあたりの若い衆はこれを知らんかな? Duff's Deviceってのは void send(short *to, short *from, int count) { int n=(count+7)/8; switch(count%8){ case 0: do{ *to = *from++; case 7: *to = *from++; case 6: *to…

どの言語を叩いてもおかしな反応を書く奴は書く。

どこかのWeb屋さんがなにか言っているが、「おかしなコードを書く奴は書く。」という論旨からどの言語で書いても同じはずだ、というのなら言語が複数ある意味をわからなくする。 ruby言語の作者さんがまたなにか言っているが、「Webアプリケーションをなめる…

RHG 読書会

では、改めて。ミラクル・リナックス社まではファミマと日本テレビタワーを目印になんとか到着。内容は色色あれど、 個人的にはアロケータが4byteのAlignでしかメモリを割り当てない仕組みになっていることを利用して、 下位3bitを使うことで「埋め込み」な…

RHG 読書会 strikes backいってきた

やらないといけないことがあったので一次会であがってきた。 きむら(K)さんを見わけることができなかった。*1orz. id:akkera102さんがこられていることを(会場で)知って、 お会いして色色と話をしていました。 思えばRubyの話をあんまりしてない気がするけ…

超基礎理論に関する比較的どうでも良いこと

ビデオゲームの実装の超基礎理論 ビデオゲームの実装の超基礎理論 - itkz ‐ ニコニコ動画(原宿) を観ていて思ったこと。 処理の優先順位と描画(表示)の優先順位は関係ないのでわ。 「描画処理の」かもしれないけれど、 GBAとかNDSのスプライトのように「描…

STDOUT,STDERR

Ruby1.8.6でこれらに対してPerlの use encoding 'euc-jp', STDOUT=>'shift_jis' Pythonの sys.stdout = codecs.getwriter("utf-8")(sys.stdout) てきな物はないのかしら? と思って探したら1.9から? むむ?

Ruby > Python

プログラミング Ruby 第2版 言語編 プログラミングRuby 第2版 言語編作者: Dave Thomas,Chad Fowler,Andy Hunt,田和勝,まつもとゆきひろ出版社/メーカー: オーム社発売日: 2006/08/26メディア: 大型本購入: 6人 クリック: 254回この商品を含むブログ (156件…

sizeof(Hoge)==0?

はてブコメントより。id:sankasekiさん曰く クソして寝る前にC言語でClassを記述して欲しい、ついで言うとサンプルソースの様にClass固有のメモリ領域が不要である場合(メンバ変数なし等)、環境によってはclassポインタがNULLになり a: b: c: が一致する あ…

もしかしてCの奴らは代入やキャストでポインタのアドレスが変わらないとか思っているのか?

class A { public: A (){} virtual ~A (){} }; class B { public: B (){}; virtual ~B (){}; }; class C : public A, public B { public: C (){} virtual ~C (){} }; int main() { C* c = new C(); A* a = c; B* b = c; printf("c:%p\n", c); printf("b:%p\n…

Cスタイルキャスト

なんでC++のキャストを使わないの? って訊いたら「めんどい」って言われた〜。 orz...

常人or変人?

変人言語 - みねこあ 2008-01-22 - [´・[ェ]・] <もももっもっ 反応遅くて済みません。 お二人からCは常人言語と言われてしもうた〜。 個人的にはC++の悪癖はCの悪癖だと思っているのと*1 CとC++で選べと言われたら「絶対」C++を選ぶと思う*2ので、 そういう…

無料のCコンパイラで何かつくる意味ってあるのか?

きむら(K)さんにどうこう言うわけではないです!(布石 まあBCC++のCコンパイラ部分もいい加減ほめられたデキではないと思いますが、 学校の授業(講義ではない?)ではコンパイラのバグが露呈するようなことは たぶんないからいいんじゃないでかね。 C99への準…

職人=男?

わたしは職人=男性のイメージを覆したい女子です。 http://d.hatena.ne.jp/yuripop/20080113#p1 個人的には職人に性別は関係なくて、 Yuguiさんとか、自分が足下にも及ばない事を思い知らされる すげー職人的女性だと思ってマス。

アジャイルというのが格好良い訳ではない

どうもアジャイルという言葉が一人歩きしているような気さえする。 アジャイルって言っておけば格好良いだろうとか、 最先端っていうイメージでアジャイルアジャイル言ってしまっている人が多い気がする。なんというか、 結局のところ、アジャイルっていうの…

!Inner classes have no special access to the outer class in C++.

らしいです。 C++初心者として思うに、Hogeでprivateなものは、Barのコンストラクタとして渡してもやっぱprivateのままで、アクセス不可のような気がするけどなぁ…… http://d.hatena.ne.jp/puruhime/20080117#1200583162 Nested classes can access private …

re:C++ vs Java 内部クラス

エラーが。うーん、Borland C++5.5は駄目な子なのかな? マジで! とか思ってC++ Builder5 Professionalで実行してみたけど 確かに外部クラスのprivate:に引っかかる。 うーぬ。 Stateを実装する際に普通に使っていたテクニックだったので、 通るもんだとば…

そろそろ内部クラスに関して一言言っておくか

というかJavaの内部クラスはすげー、と思います。 何故かと言うと、 親のインスタンスを気にせず扱えるでしょう。 これがまず「すげー」んですよ。 どの言語が凄くないって、 C++だ、コルァ! C++の内部クラスというのは実際かなり旨みが薄い。 Javaみたいに…

素敵な格言

きむら(K)さん経由。 今日の一言C では、間違えて自分のつま先を撃つのは実に簡単である。 C++ はそれをより難しく、起きにくくした。 けれども、もしやってしまった場合には、(つま先だけでなく)足全体がふっとんでしまう。Bjarne Stroustrup プログラミン…

Cのvoid*はキャストすべきかしないべきか?

きむら(K)さんに反応。 Do you CAST a pointer value which is returned by malloc/realloc/calloc and vaise versa? 要するにANSI/ISO Cではvoid*から何らかの型のポインタに対するキャストは必要ないのですが、(してもしなくてもいい) それを「すべき」…

Java-ja5.5で寝てました

土曜日にJava-ja5.5がYamashiroさん宅にて行われたので、 鍋を囲んだり、 ペ・ダイチャンさんの美味しいカレーを戴いたり、 えびちゃんのボロネーゼをうまうまといただいて、力尽きて寝てました。orz... 元々夜は弱いんですが、凄い勢いで寝てました。そうい…

C++のこういういうところが素敵じゃね?

たとえば、 bar.h class CNode { public: CNode(){ cout << "bar CNode::constructor" << endl; } virtual ~CNode();// 実装し忘れ... }; foo.h class CNode { public: CNode(){ cout << "foo CNode::constructor" << endl; } virtual ~CNode(); }; foo.cpp …

職人に成らなければいけない

プログラマの間に、ともすると職人を軽視するような風潮があることに、大きな危惧を覚えている。 SEは素人でも始められる簡単なお仕事です、なんて文句が言いはやされるようになってしまったせいだろうか。果たして、素人が仕事だけでプログラマをすることが…

ヘネパタ? パタヘネ?

re:かんつがい こっちはヘネパタですよね。>なつたんさん(詳しくないので人にふるorz... Computer Architecture, Third Edition: A Quantitative Approach (International Student Edition) (The Morgan Kaufmann Series in Computer Architecture and Desi…

そんなに面倒かなあ?

ブクマコメントより。 問題はないけど、インターフェイスの変更時にインターフェイスクラスと実装クラスの両方を変更しなくちゃいけないのが面倒でした うー、 C/C++界隈では「面倒だから」という理由で#define Hoge::getInstance() HOGE なんてしてしまう人…

パタヘネ読んでない奴はプログラマじゃない

とかいう煽りを書いてみるテスト。 別件ですが、コードDISとかstfuawscとかstfuacmuとかくだんねー。(暴言 ていうか、そういう事に縛られずに自由に生きましょうよ。 と傍観者が適当な事をいってこそこそと反感を買ってみる。(凄い別件ですみません。界隈…

げーむぷろぐらまはよもう

programming: Tim Sweeny: A Programming Language for 2010 http://www.st.cs.uni-sb.de/edu/seminare/2005/advanced-fp/docs/sweeny.pdf いそぴーは目を通しておくべきだね :) (60ページ以上あるけど、プレゼンのスライドだからそんなにテキストの量はない…

まだまだ続くよッ!Singleton

Singletonとんとん。 で、GamePadなら、 class GamePad { public: enum Button { PAD_A, PAD_B, }; private: class GamePadImpl { public: GamePadImpl(){}; virtual ~GamePadImpl(){}; bool isPushButton(Button b) { return true; } void update(){} }; st…

どうして大域的アクセスが無ければ困るのか?

Singletonの続き。:-[ 要するに GamePadを大域的アクセス可能なクラスとして扱いたい理由としては class Character { public: Character(){} virtual ~Character(){} virtual void execute() = 0; }; class Player : public Character { public: Player(){};…

よみがえるSingleton

もう少し引っ張るSingleton。 Modern C++ DesignにもC++におけるSingletonの実装の話が載っている。 GoF本におけるSingletonの説明を単純化すると「あるクラスのインスタンスがたった1つになることを保証し、それに対する大域的なアクセス・ポイントを提供…