Konohaプロジェクトは、新しいプログラミング言語Konohaを設計し、同時に先進的な実行処理系(バーチャルマシン)を開発しながら、ソフトウェア創りの基礎からイノベーションを目指しています. 現在,Konoha公式サイトはhttp://www.konohascript.org/へ移動しています.最新情報はそちらで公開しておりますのでよろしくお願いいたします.
10:14 08/04/29 いろいろ 来月末 東京メトロ沿線ウォーキング のために、じゃなかった、友人の結婚式があるらしいので、ちょっと一瞬日本に戻ります。 いやまあ、メトロウォーキングには行きますが。 りふぁらにれす アニメ、というのが通説らしいですが個人的にはゲーム。 プログラミングと俺(続き) 前回 書き忘れた。中学校の"技術"の授業で LOGO でタートルグラフィックスとかもやりました。 使ってた処理系でどこまでできたのかは全く知らないのですが、まあひたすらお絵描きしてました。 つまりメガデモ製作です(違。いろんな図形を描くときそれに伴って動くタートルをいかに作品内に取り込むか など真剣に考えたりしてました。LOGO っていう言語についてはもう、「てじゅんは」っていうキーワードしか 覚えてないですね。タートルグラフィックスって、適当なコードを適当にパラメタ変えて色々走らせると す
ここ「ひとり勉強会」は、会と言いつつひとりで勉強した記録を残してます。 金曜日は YARV: Yet Another Ruby VM のソースコード読みの日です。 履歴 (1): main から yarv コアに到達するまで (2): コンパイル処理の流れとデータ構造 (3): if のコンパイル (4): case, while のコンパイル (5): break, next, redo, retry, rescue, ensure, for, ブロック のコンパイル (6): 代入 のコンパイル (7): 自己代入, メソッド呼び出し のコンパイル (8): super, yield, リテラルなどなど のコンパイル (9): def, class, module, alias などなど のコンパイル ここまでのまとめ: PPT or PDF (10): 最適化 (11): バイトコー
プログラマの数だけForthが存在するといわれる、Forthを作ってみる。 実装言語は、C言語にする。 さて、やってみよう。 簡単なForthのプログラム スタックを作る 値をスタックに積む スタックから値を取り出す スタックの値を加算する スタックの内容を表示する Forthを実行してみる? プログラム配列を走査する 「値をスタックに積む」を実行する プログラムを用意する Forthを実行してみる ソースコードを読み込む 条件分岐を実装する 繰り返し構造を実装する ワード定義を実装する ワード名を登録する 処理内容を登録する ワード名と処理内容を関連付ける ワード定義のテスト 対話環境を作る 32ビット化する 対話環境の複数行対応 スレッディングの変更 文字列を表示する 変数を実装する 変数を実装する2 最後に ところで、「Forthを作ってみる」を電子書籍にしました。 Forthを作っ
混沌の世界 OmicronTiki へようこそ! 新しそうな技術から,懐古趣味なものまで,ざっくばらんに書き散らしております. 最近の話題は,こちら,または右上の「最近」からたどれます. 主な話題 OS ネタ OS/omicron 大学の研究室で開発していた OS です. Linux 最近,メインで使っている OS です. FreeBSD たま〜に,Linux との比較評価用に使います. OS研究リスト OS研究プロジェクトの中でも,独自OSを中心にまとめています. 開発ネタ プログラミング Agenda LinuxPDA を使い倒す. 猫日記 りぬくす工房の CAT68701 で遊ぶ. L-Card+ L-Card+ のカーネルを新しくしたり,Kaffe と格闘したり. ContOS ToyOS を作ってみよう. xyzzy C# JavaScript TextProce
31日目、あとがき他。 とりあえず読了。 [この書籍のいいところ] – とりあえず「とっかかり」にはなる – 実際にクラックしてみせてその対策としてコードを変更するところ(筆者な妙なノリはちょっと趣味ではないけれど) – 反面教師的に「俺だったらこうはしないぞ」というモチベーションを与えてくれる。これが MINIX の教本だったら「お説御もっとも」とお腹いっぱいになって終わりになってしまうところだろう [この書籍の悪いところ] – 本来 APPENDIX で掲載すべき情報をウェブサイトの紹介ですませてしまっている – 一次資料へのリンクがない – 読者ターゲットが微妙。あとがきにもあるように意図的なものであることはわかるのだが、初心者向けに書かれた C言語のソースコードは中級者以上にはストレスがたまり過ぎ [この書籍では教えてくれないこと] – 仮想記憶 – アクセス競合 – HDD, C
どうもプレインストールイメージからのアップグレードでUbuntuをいじくるのが気に食わなかったので、Debianのクリーンインストールを試すことにした: http://www.aglabo.com/agl/proevo/Linux/coLinux/debian/etch-01_installer.html CDブートは出来ないが、実はinitrdさえ渡してしまえばインストーラも問題なく動いたりする。 但し、フレームバッファやXを使うインストーラだとマトモに動かないのでちうい。 あと、やっぱりディスクデバイスは普通のカーネルと違うから、そこらへんはある程度手動で手当てしてやらねばならない。 NetBSD-currentのip_flowに関して調査している。 まずは、ip_flowを通らない場合のNetBSD-currentのIPパケット受信処理を調べて みた。 個々のイーサネットデバイスドラ
カーネルはLinuxシステムの中核をなす重要なソフトウエア部品です。Linuxを使いこなすためには,カーネルの動作や仕組みに対する理解が欠かせません。本連載では,Linuxカーネルの役割とその仕組みを体系的に紹介します。 第1回 カーネルの機能とその利用法 第2回 プログラムとプロセス 第3回 プロセス・スケジューリング 第4回 プロセス・メモリー管理 第5回 カーネル・メモリー管理 第6回 割り込み管理 第7回 ファイル・システム(前編) 第8回 ファイル・システム(中編) 第9回 ファイル・システム(後編) 第10回 ファイル名の文字コード 第11回 デバイス・ドライバ 第12回 ソケット・インタフェース 第13回 IPとルーティング 第14回 TCPとUDP 第15回 パケット・フィルタリングとQoS機能 第16回 排他制御機構 第17回 モジュール機構 第18回 カーネルの起動処理
オペレーティング・システムをスクラッチで作ろうという本。著者はOSASKの作者。 著川合秀実? C言語やアセンブラ?を勉強しながら、30日後にはすてきなOSができあがるように指導するテキスト。「簡単なプログラムなら書いたことがあるよ」くらいのセンスがあれば、それで十分!
再入不可能な関数を C で実装する 一度実行したら二度と中身を実行できなくなる再入不可能な関数を C で実装してみます。通常、このような関数はシングルトンなどの静的なデータの初期化に使いますが、ここではデータについては考えないことにします。 static 変数をフラグに使う まずは最も単純な方法から見ていきます。次の関数は static 変数をフラグに使って再入を防いでいます。厳密に言えば関数そのものには入ってしまっていますが、ここで気にしないことにします。 void once(void) { static int entered; // 最初は 0 if (entered == 1) { // すでに入ったことがある場合は return; // すぐ出る } entered = 1; // 初回の場合のみ、何かを実行する } この方法はシングルスレッドのプログラムではうまく動きますが、マ
Threaded Code(翻訳) Threaded Code(翻訳) スレッデッドコードは何に効果的か? スレッデッドコードとは何か? スレッディング技法 間接スレッデッドコード Forthと直接スレッディング トークンスレッデッドコード その他の用語 どのようにスレッデッドコードを移植可能に実装するか? 値としてのGNU Cのラベル 継続渡しスタイル スイッチスレッディング コールスレッディング 歴史 参考文献 原文 : http://www.complang.tuwien.ac.at/forth/threaded-code.htmlを翻訳したサイトがあったのだが、いつの間にかなくなった。仕方ないので、自家翻訳する。 追記:(ほとんど訳した後に、Internet archiveがあることに気がついた。私が以前見た訳文は、Threaded Code。翻訳の質はこちらの方が上) スレッデッ
λ門 Updated $Date: 2008/01/19 08:38:39 $ 様々な LISP LISPs in research TUPLE (Toyohashi University Parallel Lisp Environment) は、 Common Lisp に超並列計算機の機能を付加したもの とのことです。 NUE (New Unified Environment) の TAO は、LISP 専用機 ELIS の核言語です。 Thomas Mahler 氏の pLISPは an experimental Implementation of parallel functional Programming. It is based on massive parallel graph-reduction machine だとのことです。 Gregory J. Chaitin 氏は
GNU アセンブラで 16 ビット・リアル・モード用のバイナリを作る方法がわかったので、腕試しと趣味を兼ねて、FAT12 のルート・ディレクトリから boot.sys なる名称のファイルを探し、メモリにロードし、実行するイニシャル・プログラム・ローダ(IPL)を作ってみました。この IPL は 12 ビット形式のファイル・アロケーション・テーブル (FAT) を辿ってファイルをロードするのが特徴です。つまり、boot.sys を連続したセクタに格納していなくても、ロード実行できるというわけです。ただし、FAT とルート・ディレクトリを富豪的に扱っているため、ロード可能な boot.sys の大きさに制限があり、400k バイトぐらいが上限になっています。とはいえど、これだけあれば、boot.sys の中で 32ビット・モードや 64 ビット・モードにプロセッサを切り替えて、C言語で記述した
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く