タグ

ブックマーク / i.loveruby.net (8)

  • Y Combinator - LoveRubyNet

    $Id: ycombinator.html,v 1.6 2002/06/27 23:37:39 aamine Exp $ [ruby-list:35058] に刺激を受けて Y combinator を解読してみた。 こんなもん読むくらいなら以下の参考ページを読んだほうがいい。 参考にした (というかほとんどそのままな) ページ (英語) http://www.ececs.uc.edu/~franco/C511/html/Scheme/ycomb.html 動機 再帰関数は再帰するときに自分自身を名前で呼ぶのが普通である。 これをなんとかして名前を使わず、関数そのものを呼ぶように させたい。 求めかた まず単純な fact (階乗) を以下に示す。言語は Scheme である。 (define fact (lambda (n) (if (zero? n) 1 (* n (fact (- n

    tanakaBox
    tanakaBox 2008/02/02
    うは、すげーわかりやすい。青木さんのお蔭で、Yコンビネータがわかったよ!!ありがとう!!/読了
  • 第5章 ガ-ベージコレクション

    プログラムの実行時イメージ 突然だが、章を始めるに先立ち、プログラム実行時のメモリ空間の状態につ いて予習をしておこうと思う。この章ではコンピュータの低レベルな部分にか なり踏み込んでいくことになるので、あらかじめある程度の知識を仕入れてお かないと太刀打ちできないのだ。それにこの後の章になればいずれ必要になっ てくる。ここで一回やってしまえば後が楽だ。 セグメント 一般的なCプログラムではメモリ空間の中に以下の部分を持つ。 テキスト領域 スタティック変数やグローバル変数の置場 マシンスタック ヒープ テキスト領域はコードが置いてあるところ。二番目は見ての通り。マシンスタッ クには関数の引数やローカル変数が積まれる。ヒープはmalloc()で割り当てて もらうところだ。 三つめのマシンスタックについてもう少し話そう。マシン「スタック」と言う くらいだから当然スタック構造をしている。つまり

    tanakaBox
    tanakaBox 2007/12/11
    青木さんによるGCの解説。ウンコわかりやすい。
  • 『ふつうのHaskellプログラミング』サポートページ

    $Id: index.html,v 1.9 2006/06/01 16:35:13 aamine Exp $ [ 正誤表 | 書誌情報 | 詳細目次 ] [ SBCr | Amazon ] リスト処理・文字列処理の基礎からモナド、パーサコンビネータまで。 ふつうのプログラマに贈る関数型言語入門。 サポート情報 正誤表 GHC 6.4.2 のダウンロード [www.haskell.org] LazyLines のダウンロードとインストール サンプルコード (オンライン) サンプルコードのダウンロード (.zip) サンプルコードのダウンロード (.tar.gz) リファレンスマニュアル検索ツール href 質問や間違いの指摘などはメールで aamine AT loveruby.net (AT は @ に置き換え) までお願いします。 書誌情報 書名

    tanakaBox
    tanakaBox 2007/10/15
    買っちゃった。青木さんが書いて、nobsunさん監修。読むぞ〜。
  • LoveRubyNet Wiki: RubyPages

    2005-12-14 21:40:32 +0900 (1024d); rev 22 プログラミング言語 Ruby 関連ページ 初心者向け StartingRuby RubyMailingList RubyApplicationArchive RubyGuiLibraries 真面目なネタ RubyCodingStyle RubyMiniPattern RubyIteratorPattern …… イテレータの類型 DelegateRubyBlock …… ブロックの委譲 RubyOnWindows ActiveScriptRuby RubyHackingGuide RubyExtensionProgrammingGuide …… Ruby拡張ライブラリプログラミングガイド RubyCrashed …… Rubyをデバッグする 不真面目なネタ WhyRuby …… むかし書いた Ruby

    tanakaBox
    tanakaBox 2007/09/07
    真面目なネタはかなり読み応えアリ。
  • LoveRubyNet Wiki: BitChannel

    2007-12-30 18:43:26 +0900 (279d); rev 31 ビットチャネル。 この Wiki を動かしているプログラム。 Ruby ベースの WikiClone。 特長 徹底的に CVS を活用できる。diff は当然、annotate もできる! RDっぽい構文を基としながら、オリジナル Wiki (というか Hiki) 互換構文もある Ruby 1.8 と CVS があれば動く。追加ライブラリ不要。 表示もけっこう速い。 デフォルトで CGI, FastCGI, mod_ruby に対応している。 WEBrick を使ったスタンドアロンサーバも標準配布のみで対応。 要求環境 Ruby 1.8.1 以降 CVS 1.10 以降 (できるだけ新しいほうがよい) オプションで uconv か iconv インストールと設定 → BitChannelInstallati

    tanakaBox
    tanakaBox 2007/09/07
    青木さんが作ったcvs対応のwiki。
  • ふつうのLinuxプログラミング

    対象読者 このは、C 言語の入門書および Linux の操作に関する入門書を 読了した程度の読者が対象です。 具体的には次のようなかたに書をお勧めします。 C 言語の初歩は身に付けたので Linux での具体的なプログラミングを知りたい プログラミングを通じて Linux について知識を深めたい 他の Linux プログラミングを読んで挫折した 目次 第1部 Linuxの仕組み 第1章 Linuxプログラミングを始めよう 第2章 Linuxカーネルの世界 第3章 Linuxを描き出す3つの概念 第4章 Linuxとユーザ 第2部 Linuxプログラミングの根幹 第5章 ストリームにかかわるシステムコール 第6章 ストリームにかかわるライブラリ関数 第7章 headコマンドを作る 第8章 grepコマンドを作る 第9章 Linuxのディレクトリ構造 第10章 ファイルシステムにかかわる

    tanakaBox
    tanakaBox 2007/03/12
    読了。良書でした。参考文献読み中。
  • ソースコードを読むための技術

    $Id: readingcode.html,v 1.13 2003/12/06 00:01:08 aamine Exp $ 2006-05-02 gonzui 追加。thanks: 冨山さん 2003-12-03 ltrace と sotrace を追加 2003-12-03 ツールのところに DDD を追加。thanks: 和田さん 2003-05-27 VCG, SXT などについて追加。thanks: 梅沢さん 2003-05-27 これもすっかり忘れていた strace, ktrace, truss, etags などについて追加 2002-08-30 すっかり忘れていた ctags を追加 2002-07-07 匿名希望さんからメールでいただいた情報を追加 (動的コールグラフ) 2002-06-13 日記経由でいただいた意見をもとに文章を追加。thanks: 柳川さん、まつもとさ

    tanakaBox
    tanakaBox 2007/02/15
    ツール系は必見。> まずコードを読む目的を明確に決め、それにだけ集中するようにする。
  • Rubyソースコード完全解説 / 青木峰郎

    $Id: index.html,v 1.6 2004/07/20 23:08:12 aamine Exp $ この文書は書籍『Rubyソースコード完全解説』のHTML版です。 ただし初校段階の原稿をベースにしているため、 書籍では修正されている間違いが残っている場合があります。 予め御了承ください。 2004-02-16 に全章を公開しました。 目次 まえがき 序章 第 1 部「オブジェクト」 第 1 章「Ruby言語ミニマム」 第 2 章「オブジェクト」 第 3 章「名前と名前表」 第 4 章「クラス」 第 5 章「ガーベージコレクション」 第 6 章「変数と定数」 第 7 章「セキュリティ」 第 2 部「構文解析」 第 8 章「Ruby言語の詳細」 第 9 章「速習yacc」 第 10 章「パーサ」 第 11 章「状態付きスキャナ」 第 12 章「構文木の構築」 第 3 部「評価」 第

    tanakaBox
    tanakaBox 2007/02/14
    言語を知るにはソースを読め?
  • 1