06 Sep '12, 3am

この記事書いたひと、絶対に map, collect 使ってないと思う。あと、 compact.uniq とか。

オブジェクト指向のスクリプト言語として有名なプログラミング言語 Python は、同様にオブジェクト指向のスクリプト言語である Ruby とよく比較されているような気がします。たとえば Rubyist Magazine の記事「Rubyist のための他言語探訪 【第 1 回】 Python 」では、 Ruby の作者であるまつもとゆきひろさんご自身が Python と Ruby を比較しています。また「達人プログラマ」として有名な Dave Thomas 氏 も、 2007 年に行われた「日本 Ruby 会議 2007 」のキーノートスピーチ「The Island of Ruby (島国としてのRuby) 」にて、次のように Python と Ruby について述べています。 PythonとRuby。 2001年にアメリカでRubyのチュートリアルを開いた時は大盛況だった。 Rubyって何だろう?と。 やはり比較の対象になるのはPythonだった。 Pythonは「そうじゃなくて、こうやるんだよ」と教えてくれる。 世の中にはPythonが好きな人も居るし、Rubyが好きな人も居る。 でもなぜか 両方好きな人はあまり多くない。なぜだろう。 世の中には犬が好きな人も居るし、猫が好きな人も居る。これは好みの問題だ。 PythonとRubyについても同じ。 彼らをかわいがった時に、 Rubyが我々に与えてくれるものと、 Pythonが我々に与えてくれるものとは違う。 Pythonは「型」を重んじる。誰が書いてもプログラムは同じように見える。 Rubyは「侘寂 (わびさび)」。世界は自然で、変化する。 固定されていない。 これがRubyのすごいところなんだ。 それでは、 Python と Ruby の違いとは何でしょうか? 細かい違いは色々あると思いますが、私は Python と Ruby の本質的な違いは、「式と文の区別があること」だと考えています。今回の記事では Python と Ruby を比較しつつ、「式と文」について考えてみたいと思います。

Full article: http://jp.rubyist.net/magazine/?0039-ExpressionAndStatement

Tweets

Rubyist Magazine 0039 号が発行されました。発行に関わった全ての人に感謝

jp.rubyist.net 05 Sep '12, 10am

書いた人:るびま編集長 高橋征義 編集長からの 0039 号発行の挨拶です。(難易度:高) Ruby の歩き方 Ruby をはじめるにあたって必要な情報をご紹介します。本稿は Rubyist Magazine 常設記事です。(難易度:低) 【八...

0039 号 巻頭言 #ruby

jp.rubyist.net 05 Sep '12, 10am

今号は、るびまもついに八周年ということで、毎年恒例の 【八周年記念企画】 Rubyist Magazine へのたより と郡司さんによるRubyist Magazine 八周年 にはじまり、 海老沢さんが最近話題の RubyMotion を紹介...

“Rubyist Magazine - RubyMotion のご紹介”

jp.rubyist.net 05 Sep '12, 10am

RubyMotion とは Ruby で iOS アプリを作るための製品です。 開発には使い慣れたテキストエディタ、テストは spec、ビルドは rake コマンドという、Rubyist にとっては普段慣れ親しんだ環境で開発を行うことができます...

Rubyist Magazine - 達人プログラマ Dave Thomas が Asakus...

jp.rubyist.net 05 Sep '12, 10am

当日は Dave Thomas が来日するということで、大勢の人が秋葉原ダイビルへ集まっていました。日本の Rubyist にとっての Dave Thomas といえば、RubyKaigi 2007 での基調講演を抜きにしては語れません。Rub...

“Rubyist Magazine - RegionalRubyKaigi レポート (29) みなと Ruby 会議 01”

“Rubyist Magazine - RegionalRubyKaigi レポート (29)...

jp.rubyist.net 05 Sep '12, 10am

そして最後に、今回の主役である、Enumerator::Lazy についての話がありました。Enumerator::Lazy は Enumerator のサブクラスであり、Enumerator で保持していたブロックを遅延評価で処理できるように...