タグ

rubyと仕様に関するastk_fのブックマーク (2)

  • なぜrubyは他の言語と比べて遅いのでしょうか?

    回答 (3件中の1件目) Rubyの実行速度に興味があって、15年くらいMRIの開発をしています。興味があるので長い記事になっちゃったことをお詫びします。 遅いと言ったとき、多分「実行速度」の話をしているんだと思いますが、それ以外にも結構いろんな「はやさ」があります。思いつくところで少しご紹介します。 (1) プログラムを作るはやさ Ruby は生産性が高い言語と言われることが多いので、プログラムを作る早さは早い、という評価が一般的です。 Cで書くと2日かかる。実行時間は0.1秒 Rubyで書くと1日かかる。実行時間は10秒(Cの100倍) と、すこし極端な仮定を置いてみると...

    なぜrubyは他の言語と比べて遅いのでしょうか?
  • 第5章 ガ-ベージコレクション

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

  • 1