Rubyにはコード片を表すオブジェクトが複数ある。 Method , UnboundMethod , Proc である。 Continuation は少し違うけど、実行コンテキストを記憶しているオブジェクトという意味では近いものがあるか。『 Ruby Way 』にはこういういろいろがあることについて「驚くほどのことではありません」と書いてあるけれども私は驚いた。で、これらが微妙に違うのだ。困ったもんだ。いや、便利なのかもしれないが。 それで今回はこれらの概要を眺めてみたいと思う。 普通のメソッド defでメソッドを定義するのが一番普通だやな。 class C def greeting(arg) puts "C#greeting reveived #{arg}" end def iterator yield 'iterator 1st' yield 'iterator 2nd' yield
もの人がブックマークしているこの「Rubyを仕事に使うべし!」という記事で書かれているRubyの優れた特徴は、実際のところ、どの部分が、どこまで本当なのでしょうか? 少し検証してみたいと思います。 「Rubyがスゴイ」とされる点のどれがホントでどれがウソ? 「Rubyを仕事に使うべし」では、まず、Rubyの特徴として、 (1)いろんな言語のいいとこ取り (2)構文が強力 (3)楽しくプログラミング (4)問題が起こりにくいように設計されている という点を冒頭で掲げています。 まず、これらをどのように検証すればよいか、考えてみます。 まず、(1)のいいとこ取りについては、いいとこ取りをし続けながらいつも進化しているのは、最近の言語はみんなそうで、それはRuby独自の特徴でもなんでもありません。 たとえば、C#は、その典型で、VM、自動メモリ管理、パッケージによる名前空間管理、マルチスレッド、
プログラミング言語Rubyが注目を集めています。Ruby関連の書籍が次々と出版され,2006年6月には国内初の大規模Rubyイベントである「日本Rubyカンファレンス2006」が催されました。また,Rubyで書かれたWebアプリケーション・フレームワークRuby on Rails(以下Rails)が話題となり,Rubyの高い生産性が一般に知られるようになってきました。 Rubyの生産性はJavaの10倍とさえいわれます。なぜRubyは生産性が高いのでしょうか。それは,Rubyはいろいろな言語から優れた所を集めた「いいとこ取り」言語だからです。Rubyの特徴は「構文が強力なので,迅速な開発ができる」「人に優しい言語なので,楽しくプログラミングできる*1」「問題が起こりにくいように設計されているので,初心者でも簡単に安全に作業でき,熟練者は高度なプログラミングを行える」といった点です これらの
Haskellというプログラミング言語を知っていますか? 全く聞いたことがないという人が多いかもしれません。そういう名前の言語があるのは知っているけど,どんな言語かは知らないという人もいるかもしれませんね。でも最近では,一部の先進的なソフトウエア開発者の間で,一種のブームと言えるほど熱狂的に受け入れられています。 なぜならば,Haskellは様々な優れた特徴を持っているからです。最初に,他の言語にはあまり見られない際だった特長を一つだけ紹介してみましょう。「遅延評価(lazy evaluation,怠惰評価ともいう)」です。 遅延評価とは,与えられた値を必要になるまで評価(計算)しないということです。この性質により,不必要な計算が行われる無駄をなくすことができます。また,「潜在的に無限の大きさを持つデータ構造」といった通常のプログラミング言語では扱いの難しいものを直接扱えるため,より直接的
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く