Objective-C

vim で *.m を作ると最初に matlab だと認識されてしまう

まだまだ Objective-C で遊んでます。 んで、vim で新しく *.m なファイルを作るとデフォルトでは matlab.vim が使われてしまうので、これを objc.vim に変更した。 $VIM/runtime/filetype.vim を見てみると、ファイル名が *.m のときには s:FTm() が呼ばれ…

普通は Objective-C 形式に直すよね。。。

普通に考えれば Objective-C 風の宣言に直すよね。何やってんだ俺。 ということで、funcname のところと parse をちょっと修正。 http://codepad.org/sySF3JGQ それと codepad のアカウントを取ってみた。

Objective-C のメソッドをC言語風になおすパーザを Haskell の Parsec で書いた

Objective-C ではクラスからメソッド一覧を取得でき、メソッドの名前とエンコードされた引数の型を得ることができるそうだ。 http://journal.mycom.co.jp/column/objc/019/index.html エンコーディングの規則はこうなっている。 http://journal.mycom.co.jp/…

とりあえず先にこっちを読もう

GC のドキュメントを途中まで読んだ。 設計は Java のそれと似たもの? reference counting 方式じゃなくて mark and sweep 方式っぽいし、2種類の generatonal GC*1だし、プログラマから request*2 を送れるし。 しかしそれより先にこっちの連載を読んでみ…

Cocoa の Memory Management

NSAutoreleasePool とか release, autorelease とかを実はまだよくわかってない。 ドキュメントを読んでみたら、Leopard 以降では Garbage Collection*1機能があるらしい。 gcc -fobjc-gc あるいは gcc -fobjc-gc-only でこれを有効化できる。 http://develo…

名前(NSString)からNSStringEncodingを得る

せっかくMacをもっているんだから、Objective-C (Cocoa) を使ってみないともったいない気がしたんだ。 #import <Cocoa/Cocoa.h> @interface Foo : NSObject { int val; } -init:(int) v; -add:(int) v; -(int) get; @end @implementation Foo -init:(int) v { val = v; retu</cocoa/cocoa.h>…