【お知らせ】プログラミング記事の投稿はQiitaに移行しました。

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

判別共用体 (2)

C++

id:n7shi:20110423で取り上げた判別共用体の変換例で、C#の継承とvirtualを使った形式は冗長ですが素朴だと思います。C++なら宣言と実装を分離できるので、評価関数だけを横断的にまとめられるのではないかと思い試してみました。

判別共用体 (1)

F# C#

以前、C#からF#への変換によって、F#に触れるきっかけを作ろうとしました(id:n7shi:20090722, id:n7shi:20101226)。この方法だととりあえずF#で何か作れるようにはなりますが、F#特有の概念の理解にはあまり役に立ちません。ぜくるさんが判別共用体につい…

EXEを作る (4)

id:n7shi:20110421の続きです。リフレクションを用いて、クラスの中のクラスを追えるようにします。 https://bitbucket.org/7shi/peben/src/6368e0962f3f/04/04/

EXEを作る (3)

id:n7shi:20110420の続きです。フィールドを1つずつ指定して書き込むのは面倒なので、リフレクションで自動化します。 https://bitbucket.org/7shi/peben/src/6a8b74715084/04/04/

EXEを作る (2)

id:n7shi:20110419の続きです。バイナリの中をオフセット指定でベタ書きするのは問題があります。名前でアクセスするためクラスを定義します。まずDOSヘッダです。 https://bitbucket.org/7shi/peben/src/dd0d83d89032/04/04/

EXEを作る (1)

id:n7shi:20110418で告知した第4回 PE勉強会用にサンプルの準備を始めました。進捗状況は以下のリポジトリの04フォルダで確認できます。 https://bitbucket.org/7shi/peben/src 第3回(id:n7shi:20110416)では、簡単なプログラムならC++を本格的に勉強して…

第4回 PE勉強会

Windowsの実行ファイル (EXE/DLL) で使われているPE (Portable Executable) 形式についての勉強会です。バイナリいじりの基礎から始めて、EXEファイルやDLLファイルをコンパイラなしで作って動かすことを目標にします。PEをきっかけにして、x86のマシンコー…

勉強会

ZIP

ZIP圧縮についての勉強会です。ファイルが格納される構造(コンテナ)、エラーチェック(CRC-32)、圧縮アルゴリズム(Deflate)について説明します。 2011年5月14日(土) 午後1時〜6時 マイ・スペース&ビジネスブース池袋西武横店 7号室 (東京都豊島区南…

第3回 PE勉強会 完了報告

id:n7shi:20110227で告知した第3回 PE勉強会が無事に完了しました。ご参加の皆様、お疲れ様でした。 配布資料: peben03.pdf(全ページ), peben03-1.docx(1ページ), peben03-2.xlsx(2ページ以降) サンプル: https://bitbucket.org/7shi/peben/src/902f63…

コマンドライン版インタプリタ

id:n7shi:20110408で開発したSilverlight版のPDP-11インタプリタですが、ブラウザから出してコマンドラインで動かなければ、実用には厳しいと感じました。そのためC++で書き直して、Win32とPOSIXに対応しました。Win32はMinGW、POSIXは Interix 3.5, NetBSD …

コンパイラが動作

id:n7shi:20110330で開発に着手したPDP-11のインタプリタですが、最低限必要な命令とシステムコールを実装して、ようやくV6のコンパイラが動くようになりました。Silverlightに対応した環境ではブラウザ内で動きます。 実行 ⇒ http://7shi.net/v6/ ソース ⇒ …