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

NGK2008 いってきた(12/20)

またの名を名古屋合同懇親会 2008年忘年会の部。 NGK2008 : ATND NGK にいってきた - クラなんとか or くらなんとか or cla なんとかの日記 http://www.jamboree.jp/cms/archives/283 楽しんできました。プレゼンをその場でつくって場を沸かせるプレゼンテー…

DeLLa.JS JavaScript第5版読書会 #9 いってきた(12/20)

DeLLa.JS JavaScript第5版読書会 #9 - DeLLa.JS | Google グループ DeLLa.JS 「JavaScript第5版」読書会 #9 : ATND 3人で読書会。 JavascriptよりCSSを学習した時間が長かったような気がする。サンプルを打っていて変数名を間違えて悩んだのはJavascript(と…

Java Class ファイルを読む(4)

Java Class ファイルを読む(3) - アウトスタンディングなプログラマを目指しての続き。 constant_pool[13] 00000070 65 2e 6a 61 76 61 0c 00 04 00 05 01 00 04 42 61 |e.java........Ba| 00000080 73 65 01 00 10 6a 61 76 61 2f 6c 61 6e 67 2f 4f |se...…

読書管理

一ヶ月弱前からStack Stock Books - ココサブで読んだ本の管理をしています。きっかけはとある友人が読んでいる本のリストを公開して欲しい的発言です。Stack Stock Booksを使うことにしたのはid:clairvyさんも使ってるからです。 それなりに管理をつづけら…

Java Class ファイルを読む(3)

Java Class ファイルを読む(2) - アウトスタンディングなプログラマを目指しての続き。 constant_pool[4] 00000010 00 0d 07 00 0e 01 00 06 3c 69 6e 69 74 3e 01 00 |..........| tagの値が1(0x01)なので、CONSTANT_Utf8。 CONSTANT_Utf8の場合のフォーマ…

CSNagoya CPUを創ろう的な(12/7)

行ってきました。CPUネタの勉強会に9人もの人が集結してるのは凄い。 が、CPUを創るのはまだ先になりそうです。そういえば、大学の特別講義的なものでほぼ言われるがままに基盤設計ツールで配線をして、FPGA?に焼き込んだことがあったな。 で、作って学ぶCPU…

Java Class ファイルを読む(2)

Java Class ファイルを読む(1) - アウトスタンディングなプログラマを目指しての続き。 constant_pool_count u2 constant_pool_count; 00000000 ca fe ba be 00 00 00 32 00 0f 0a 00 03 00 0c 07 |.......2........| 次の constant_pool の要素数がいくつあ…

コード書き再開

コード書き始めると疑問が出てくる出てくる。 できるだけ自分で疑問は潰したいが流石に限度がある。 id:higeponさんにお聞きしながらやっていこう。よろしくお願いします。

Java Class ファイルを読む(1)

CSNagoya コンパイラの部 - アウトスタンディングなプログラマを目指してがきっかけ。 参考にしているもの Java SE Specifications Java仮想マシン仕様 (The Java series) (上のリンクの和訳本) 下ごしらえ 動作するけどシンプルなJavaプログラム public cla…

CSNagoya コンパイラの部

CSNagoya コンパイラを創ろうってな事で出力するコードはJava仮想マシン向けにすることになったらしい。 id:dominion525さんからJava仮想マシン仕様 (The Java series)をお借りした。 スタックマシン型のVMはGauche読んだりしてるおかげか結構いける(何がだ…

Port

次はI/O周りをすることになった。 仕様を読んだり、コードを眺めていたりします。現状のmoshではポート関係のクラスの継承関係は BinaryInputPort BinaryArrayBinaryInputPort CustomBinaryInputPort FileBinaryInputPort BinaryOutputPort FileBinaryOutput…

moshのfixnums実装できた気がする

テスト全部通った。 まだレビュー受けてないので油断はできないけど嬉しいもんだ。 次はなにをすることになるのだろう。id:higeponさんが候補をいくつか挙げていたようだけど。

SICP勉強会 #3 11/24

SICPの問題1.16〜1.20までやった。 id:lequeさんとお会いしたり、同業界の人とお会いしたり。どちらの方も住んでるところが近かったりして面白かった。 議論も活発だったと思う。いつ終わるか分らないのはさすがSICPだといったところ。

CSNAGOYA(今度こそ70回目) 11/23

CPUの勉強会。Z80のサブセットをVerilog HDLでかいてみる方向になった。 そっちの事よりSICPの話に頭を使っていた気がする。 とりあえず思ったことは再帰で綺麗にかければ反復的も比較的綺麗にかけそうということ。

Outputzはそのままはれるのか

2008/11/22 の Outputz原稿用紙 19.1枚(7,640文字) powered by Outputz.

CSNAGOYA@短歌会館 (11/16)

http://groups.google.co.jp/group/csnagoya行ってきました。コンパイラ的なテーマでいろいろネタが出ました。どれかはやらないとまずそうな感じです。 コンパイラコンパイラ パーサーって慣れると機械作業っぽくなってくる じゃあそれコンパイラコンパイラ…

is-a?を追いかける(MOPの片鱗をみた?)

Reading Gaucheにて現在is-a?相当の命令の辺りを読んでいます。 今は大体読み終わった段階なのですが、以下のコードの辺りの理解がいまいち(ひらメソッドで読んだページはReading Gauche/class.c/Scm_GenericChangeClass - Mona OS developers Wiki)。特にk-…

ifをlambdaで頑張ってみた

第1回SICP勉強会@名古屋大学 - YasuyukiMiuraの日記辺りでlambda使って評価タイミングをずらせば、ifの代わりになるんじゃないかという話が出てたのでやってみました。 (define-syntax my-if (syntax-rules () ((my-if c t e) ; (my-if condition then else)…

Python東海 第3回(副題なし) (11/15)

http://groups.google.co.jp/group/python-tokai/web/第3回 cgi module phpinfo()的な関数があったりとか /usr/bin/env pythonと /usr/bin/python(とか直接パス)の話とか 個人的には直接パスの方が好き PIL(Python Imging Library) いろいろ画像を編集するた…

SICP読書会@Nagoya 2回目(11/10)

平日なのが厳しかった。遅刻したし。しかし、結構人が集まってたし面白かった。 やった内容は結構前に一応解いた所なのだけど、今見るとなんでこんな風に解いたのだろうとか思う所が多々あった(いい意味でもわるい意味でも)。 証明の解説を聞いたり、どう考…

「CPUの創り方」読書会(第70回の勉強会。) (11/9)

初参加。CPUを創ってるそばでVerilog HDLの本を読んでました。 途中から分かった気になるVerilog HDL講座が開催され、次回以降は講師側に回ることに。 これは昨日聞いた話だけどHome :: OpenCoresにてt80という名でZ80のコードが載ってたり、他にもいろいろ…

DeLLa.JS JavaScript第5版読書会 #8 (11/8)

会場は株式会社コスモルートでした。駅の近くでほぼ迷わずいけました。15章ドキュメントの制御を読んだ。DOMをほとんど分かってなかった事に気づいた。340ページの例 15-7(javascript部分は以下に)を書いて、FirebugでHTMLがどう変化するかを見て理解が進ん…

開発環境の違い

moshのコードになんとか関われ始めました。といってもレビュー, 開発環境整えるとか見ても分かるようにタブじゃなくてスペースでインデントするようにとか、余計な迷惑をお掛けしている状況です。 先ほど2,3度目のコミットをしました。2回連続でコミットして…

なんでだろう

mosh リビジョン621。 mosh>(fl=? +inf.0 -inf.0) 1. &assertion 2. &who: "fl=?" 3. &message: "flonum required, but got 0" mosh>+inf.0 0 mosh>-inf.0 0 mosh>(fl=? 3.3 3.3) 1. &assertion 2. &who: "fl=?" 3. &message: "flonum required, but got 3" …

odd?

奇数かどうかを調べる手続き。奇数は2で割るとあまりがでる整数。 Gaucheでちょこっと試してみる。 gosh> (odd? 3.0) #t gosh> (odd? 3) #t gosh> (odd? 3.1) *** ERROR: integer required, but got 3.1 Stack Trace: _____________________________________…

メモ

moshお勉強中。 こんな感じで書くと組込み手続きになるみたい。 Object scheme::命令名Ex(int argc, const Object* argv) { DeclareProcedureName("命令名"); checkArgumentLengthAtLeast(最低必要な引数の数); // checkArgumentLength(必要な引数の数); // …

moshのcommiterになりました

Google Code Archive - Long-term storage for Google Code Project Hosting.のメンバーのところにkokosabuが!いやまだコミットしてませんけどね。 少しでも貢献できればいいなと思います。 よろしくお願いします。

break vs goto

Gaucheでgotoでswitchの前まで戻ってくるようになっていて、速度的に違いはあるのか疑問に思ったので実験。 while( hoge ) { switch( fuga ) { case 0: break; ... default: break; } /* break したらここに来る? */ } というアセンブリが吐かれればgotoで d…

CSNagoya コンパイラを作ろう編 ごかいめ

CSNAGOYA | Googleグループ コンパイラ入門 C#で学ぶ理論と実践 (ソフトウェア実践講座)作者: 冨沢高明出版社/メーカー: ソフトバンククリエイティブ発売日: 2006/02/16メディア: 単行本 クリック: 18回この商品を含むブログ (38件) を見るに沿ってパーサー…

末尾再帰最適化がデフォルト

Gauche-0.8.11のvm.cより 456 /* used for the inlined instruction which is supposed to be called at 457 tail position (e.g. SLOT-REF). This checks whether we're at the tail 458 position or not, and if not, push a cont frame to make the opera…