タグ

ブックマーク / freak-da.hatenablog.com (6)

  • R6RSの実装 - 本当は怖いHPC

    また言語処理系を書きたい熱が復活したので、ちょっと手元で書き始め。 せっかくならR6RSの処理系を作ろうということで、参考実装としてR6RSの実装をリストアップしてみた。他にあったらぜひ教えてください(id:fujita-yさん、ありがとうございました)。 順次インストールして試してみたいと思ってます。 chez scheme 論文『Three Implementation Models for Scheme』(通称3imp.pdf)や、『プログラミング言語Scheme』(原著)の著者であり、R6RSのエディターでもある R. Kent Dybvig氏による商用実装。 インタプリタは無料で利用可能 実質上の Reference Implementation かな…(?) Ypsilon Scheme System ゲーム開発の基盤技術として開発 → リアルタイム性を重視 『マルチコアCPU

    R6RSの実装 - 本当は怖いHPC
  • if not と unless の使い分け - 本当は怖いHPC

    周辺で話題になったので書いておく。if notとunlessをどう使い分けるか。 検索してみると、青木さんのRubyCodingStyleや、前田さんのRubyコーディング規約などが目に付く。どうやら、世間での標準は、「使えるところではなるべく unless を使い、if not は使わない」ということらしい。 が、僕の場合はちょっと違うので書いておく。他にもこういう人はいるだろうか? 正常処理の分岐にはif not、異常処理にunless 使い分けは簡単明瞭(だと思う)。正常処理の分岐にはif not、異常処理(例外処理)にはunlessを使うというもの。また、if文を使って正常と異常を分岐する場合は、どんなときでも if <正常> else <異常> end となるようにしている。notが入ろうが入るまいが。 このようにする理由はいくつかある。上から順に大きな因子。下に行くほど、いわゆ

    if not と unless の使い分け - 本当は怖いHPC
    yhara
    yhara 2008/07/05
    異常が短くて正常がとても長いときは、 if <異常> else <..正..常..> end みたいに書くなぁ
  • [firefox] Firefoxがメモリを食いすぎて困っている人へ。タブの状態を再現して再起動してくれる「RestartFirefox」 - 本当は怖いHPC

    やや釣りっぽい(というかガジェットブログっぽい)タイトルですいません。 Web開発には欠かせないFirefoxだけど、タブを開いたり閉じたりしてずっと使っていると、すさまじくメモリをっていることがある。ボクの環境だと、起動直後は60MB程度のであったメモリ使用量が、3〜4時間後には300MB以上になっている。動画サイトを見たりすると、400MBを超えることも珍しくない。こうなってくると、他のアプリケーションの利用、というかマシン全体の性能に差し支えてしまう。 解決法としては、ただFirefoxを再起動すればいいだけなのだ。だけど、リファレンスマニュアルやらテスト画面やらたくさんタブを開いて作業してるのに、終了するとまたゼロから開きなおしになってしまう。そんな時のセッション管理なんだが、セッションがずっと保存されてしまうので、定期的に消すなどしないといけない。これがまた面倒でなかなか使う気

    [firefox] Firefoxがメモリを食いすぎて困っている人へ。タブの状態を再現して再起動してくれる「RestartFirefox」 - 本当は怖いHPC
  • IRB isn't cool enough? Use Utility_belt. - 本当は怖いHPC

    僕らの友達、irb irbは便利だ。インタラクティブなシェルって、動的な言語のパワーの源泉だよね。 でも、Rubyに付属のirbは、素のままじゃちょっと使いにくい。 irbを便利にしてくれる[http://utilitybelt.rubyforge.org/index.ht:title=Utility_belt]というツールがある。 インストールと設定 sudo gem install utility_belt としてインストールする。 そして、ホームディレクトリの .irbrcに以下の設定を書く。 require 'rubygems' require 'utility_belt' UtilityBelt::Themes.background(:dark) # or :light 機能 すると、いろいろ便利なメソッドなどが定義されるようになる。以下、気になったものを列挙。 (最低限の)Sy

    IRB isn't cool enough? Use Utility_belt. - 本当は怖いHPC
    yhara
    yhara 2008/02/21
  • [ruby][rubinius] RubiniusのFFIをMRIに移植したらヒーローか? - 本当は怖いHPC

    昨日のlibxml-rubyの開発メーリングリストで、メイン開発者のDan Janowskiが、こんなメールを流していた。 libxml-rubyって、Rubiniusで動くの?って質問に対する返答。 Thu Jan 31 11:27:54 EST 2008 This entices me. The MRI internals (esp. the GC) are the biggest obstacle to making this library work and I am beginning to really hate them. I've even had this delusion that making this library work with Subtend may enable effective repair of outstanding faults more ea

    [ruby][rubinius] RubiniusのFFIをMRIに移植したらヒーローか? - 本当は怖いHPC
  • RSpecの標準Matcher一覧表 - 本当は怖いHPC

    追記2(2015/09/08)ありがたいことに、未だにこの記事をブックマークしてくださる方がいらっしゃいますが、2008年に書いた記事なのでご注意下さい。内容はアップデートしていません。私自身はすでにRubyを使っていません。 追記:古い情報ですので、記事の日付とお使いのRSpecのバージョンを見比べて、参考程度にご覧ください。大部分は通用するはずですが。 Matcherをいちいち調べるのが面倒になって、公式のリファレンスマニュアルは一覧性が低いから、自分で一覧表を作った。 RSpecそのものについては、スはスペックのス 【第 1 回】 RSpec の概要と、RSpec on Rails (モデル編)などをどうぞ。そのうちRSpec on Rails版も作る予定。 名前 not((should_notで使えるかどうかという意味。)) 意味・機能 == ○ ==演算子を利用して比較する。ex

    RSpecの標準Matcher一覧表 - 本当は怖いHPC
  • 1