Yukihiro Matz @yukihiro_matz @kmizu 静的型のメリットは十分に理解してるけど、動的型よりも「表現力が高い」ってことはないんじゃないかなぁ。スタイルの違いはあっても。Mapの例にしても、型情報を失わないScalaはすごいけど、動的型言語なら型情報なしでそのまま動いちゃうわけで。 2010-05-08 11:17:33
ソフトウェア工学の講義中、先生が「Rubyはクラスにメソッドを詰め込みすぎ」という主旨のことを言ったけれど、オブジェクトが何であるかよりもオブジェクトがどのように振る舞うかを重視するとき、Rubyのやりかたは正しいんじゃないかなーと思った。 ともくんのママ on Twitter: "ソフトウェア工学の講義中、先生が「Rubyはクラスにメソッドを詰め込みすぎ」という主旨のことを言ったけれど、オブジェクトが何であるかよりもオブジェクトがどのように振る舞うかを重視するとき、Rubyのやりかたは正しいんじゃないかなーと思った。" CocoaのNSStringクラス見せたら発狂すんじゃないかと思ったが、SqueakのStringクラス見たら自分も発狂しかけた。 ともくんのママ on Twitter: "CocoaのNSStringクラス見せたら発狂すんじゃないかと思ったが、SqueakのString
2009年01月25日00:00 カテゴリ書評/画評/品評Lightweight Languages 聖書降臨 - 書評 - プログラミング言語Ruby オライリー矢野様より献本御礼。 プログラミング言語Ruby まつもとゆきひろ / David Flanagan 卜部昌平監訳 / 長尾高弘訳 [原著:The Ruby Programming Language] 初出:2009.01.22; 販売開始まで更新 やっとキタ━━━━(゜∀゜)━━━━ッ!! 長らくバイブル不在だったRubyに。 ただし、ちょっとした注意点がある。ヒント: ラクダ本は「Programming Perl」 ヘビ本は「Programming Python」 で、おそらく今後「ハチドリ本」と呼ばれるであろう本書は「The Ruby Programming Language」 本書「プログラミング言語Ruby」は、プログ
<< 2009/01/ 1 2 1. おつかい 3 4 5 6 7 1. 知事に会う 8 1. 朝ご飯 2. 恐竜の映画 9 10 1. 大雪 11 1. [教会] 雪の日 12 1. 雪かき 13 1. [Ruby] Ruby標準規格合宿 14 1. [Ruby] 合宿2日目 2. ACM Professional 15 1. [Ruby] 合宿3日目 2. Visor Edge 16 1. [Ruby] 合宿4日目 17 1. @type エンジニア適職フェア 2. PDA 18 1. 住所録 19 20 21 1. たまIT戦略会議 キックオフシンポジウム 2. CTO飲み会 22 23 24 25 26 27 28 29 30 31 >> _ [Ruby] Ruby標準規格合宿 合宿と言っても夜はやらないのはいつも通り。 Ruby標準規格原案作成をドライブするため、 WG委員長の中
[ruby-core:18437] Class as second-generation singleton class を読んだ当初は、特異クラスのクラスが Class ってことでええやん!と思ったのですが、改めて調べてみるとどうやら必ずしもすべての特異クラスが Class に属するわけではないようで(かつ、確認する過程で、id:sumim:20080111:p1 の間違いを見つけてしまったり、id:sumim:20061019:p1 の謎が解けたりもしたので)、この機会に表題の件についていったん図にして自分なりに理解を整理しておくことに。 関連: Ruby1.9 のクラスのメタ階層を整理する 2 - Smalltalkのtは小文字です Ruby1.9 のクラスのメタ階層を整理する 3 - Smalltalkのtは小文字です Ruby で、クラスのメタ階層の情報を得る際の注意として、Ru
____ / \ /\ キリッ . / (ー) (ー)\ / ⌒(__人__)⌒ \ | |r┬-| | Ruby 1.9はクリスマス前にリリースします \ `ー'´ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) ____ /_ノ ヽ、_\ ミ ミ ミ o゚((●)) ((●))゚o ミ ミ ミ /⌒)⌒)⌒. ::::::⌒(__人__)⌒:::\ /⌒)⌒)⌒) | / / / |r┬-| | (⌒)/ / / // | :::::::::::(⌒) | | |
私は気が付いてしまいました。Ruby の動的型付けは多くのエラーを引きおこすことに。そして、安心してデプロイするためには 95% ものテストカバレッジを達成しなければいけないことに。95% のテストカバレッジを得ることの代償として、私の書いたコードは(テストコードも含めて) Java で書いたものと同等のサイズにまでふくれあがってしまいました。その上、Rails では動的なコードの変更が可能なため、開発・テスト・デプロイ中にトラブルが続出するようになりました。高いテストカバレッジを確保しているにも関わらずです。これらの問題にくわえて、MRI(Matz Ruby Implementation: まつもとゆきひろ氏による Rubyの実装)は速度が遅く、言語仕様も安定していません。それなのに開発コミュニティはそのことに見向きもしません。 liftを開発した人へのインタビューなんだけど、ちょっとひ
_ [Ruby] RubyFools エイプリルフールにちなんだRubyのイベントを開催するので、 とJAOOでお世話になった人たちから依頼されたので ほいほいとコペンハーゲンまで来たのだが、 まさかカンファレンスそのものが渾身のエイプリルフールジョークだとは思わなかった。 さすがヨーロッパはエイプリルフールにかける熱意とスケールが違う。 文化の違いに驚愕した。 今、コペンハーゲンで途方に暮れている。 どうしよう。 という嘘をつくのはどうだろうか。 こちらはまだ早朝で、まだ朝ご飯も食べてないので、 実は嘘じゃなかったりするのかもしれないけど。 会場に着いた。冗談じゃなかった。当たり前だけど。 Dave Thomasのキーノートも、 Evan PhoenixのRubiniusの話もサイコーである。 来てよかった。 唯一の懸念は明日朝の私のキーノートだな。
実は共通点の多いRubyとJava。Javaエンジニアであり、JavaとRubyの両方のインストラクターでもある筆者が贈る、JavaエンジニアのためのRuby入門。 前回「Javaエンジニアにこそ、Rubyの良さが分かる」では、JavaとRubyの概要と歴史、使われ方について紹介し、なぜJavaエンジニアがRubyの学習に向いているのかについて解説しました。 今回から2回にわたって、具体的にRubyとJavaの文法を比較してみます。JavaエンジニアがRubyを学ぶ際、「ここはすんなり通過できる」というような共通する部分と、「ここは違いをよく認識する必要がある」というようなRubyにあってJavaにない部分を、いくつか紹介したいと思います。 まずは、Javaエンジニアがほとんど戸惑うことがないと思われる、JavaとRubyの共通点をいくつか挙げてみます。 JavaとRubyの共通点(1)~
<< 2008/03/ 1 1. [Ruby] Ruby 1.9.0-1 snapshot released 2. 高木浩光@自宅の日記 - 公開鍵暗号方式の誤り解説の氾濫をそろそろどげんかせんと 3. [Ruby] Lisa Awards: Biggest Hack for a Language Runtime on Dion Almaer's Blog 2 1. [教会] 第一安息日 3 1. [言語] CS 11: Python track: python idioms 2. [Ruby] Binary search algorithm - Wikipedia, the free encyclopedia 3. [OSS] Theological Cultural Analysis of the Free Software Movement 4. 小寺信良:正直、テレビはもうダメかも
こんな感じか. % cat -n hoge.rb 1 def test(a, b) 2 a + b 3 end 4 5 6 def main() 7 if ARGV.length > 3 8 test(1, test()) 9 else 10 test(1, 2) 11 end 12 end 13 14 Process.exit(main()) % ./truby hoge.rb hoge.rb:8: number of arguments mismatch(ArgumentError) hoge.rb:10: number of arguments mismatch(ArgumentError)
ベータ中のOCRサービスEvernote ↓ Evernoteで自分の脳を拡張する(プライベートベータご招待) のベータサービスアカウントが届いたので試してみた。サインアップページから本登録 CAPTCHAがある。。。 さっそく試してみよう、Evernoteのスキャン力とCAPTCHA、どっちが上か? 一文字目 "b" は認識 二文字 "b8" は無理。。:( もう少し弱いCAPTCHAなら解けるかも、ってところか。色々試してみたけど、なかなか性能良い印象。 あとメールに写真を添付して投稿もできる。日本語は未対応ぽい。 ここから登録して、二週間待ちくらいでアカウント届いた。 で、関係ないけど最近読んだ本の話を少し 「しあわせの理由」はグレッグイーガンの短編集で、中身も面白かったけど文末の解説が面白かった。 円周率というものを完全に記述するのに無限のメモリーが絶対必要かというとそんなことは
http://d.hatena.ne.jp/m-hiyama/20080109/1199863428http://d.hatena.ne.jp/sumim/20080109/p2 うーん、タイトルでスルーしてたけどさすが面白い。誰か Rubyist が既に書いているかな?という気がしますけど。まあいいか。以下は少しだけ調べながら書きましたが、カンチガイなどにより嘘や不正確な情報が混じっている可能性があります。 まず Ruby は Smalltalk に影響を受けた(とされる)オブジェクトシステムを使っています。ということで、 Object という識別子はクラスという概念を指すと同時に「Objectクラスオブジェクト」も指します。ややこしいことに Ruby にも Object.class という表現は存在するのですが、それは「Objectクラスオブジェクト」ではありません。「Object ク
せっかくなので Ruby(1.9)についても調べてみました。結論から書くと、Ruby も Smalltalk と同じく四階建てで、その造りもそっくりでした。この絵が網羅している範囲に限れば、両者はほぼ“瓜二つ”。 ただ、隠し事をしない Smalltalk と違って、何もかもさらけ出してしまうことを必ずしも佳しとしない Ruby では、表面上は三階建てのフリをしている and/or 特異クラスが不可視化されているせいで、上図のような実情どおりにはユーザーには見えません。ちなみにどんな“フリ”をしているかは次図に。 前後しますが、Ruby には「特異クラス」という、オブジェクト特異的な通常は不可視の無名クラスをアドホックに作れる(つまり元のオブジェクトはそれまでのクラスのもとを離れ、新しく作られた特異クラスのインスタンスとなる…)機構があり、これをインスタンス特異的なメソッド(Ruby ローカ
先日の木曜日、YLUGに参加しました。笹田耕一さんの YARV(Yet Another RubyVM) の講演会でした。なんか、会は、過去9年間の間で、1,2を争う盛り上がりだったそうで、すごく楽しかったです。参加者のレベルも高く、YARV の中の話を色々と聞かせていただきました。 その席で、ザイボウズ・ラボの竹迫さんに、「Ruby on JavaScript つくらないの?」とお誘いを受けたので、この週末、作ってみました♪ 名づけて、HotRuby。ちゃんと動いているよ〜 http://hotruby.accelart.jp/ 基本的な文法は、大体、実装しました。ただし、組み込み関数や組み込みクラスは、大部分が実装されていません。文法面でも、例外は実装していません。 仕組みは、一度、サーバーの Ruby 1.9.0 の YARV でオペコード列にコンパイルさせて、それを JSON でクラ
こんにちは。Ruby(とRails)を担当している石原です。 前回に引き続き、ソーシャル「OSを入れた後にインストールする10のアプリケーション」(仮)を作っていきます。以降、サイトの名前は 10 Best Application on New Install から取って 10best とします。 これまでのエントリーはこちら↓ つくるぶガイドブログ: ひとりサービスの雛型をつくる(リキッドレイアウト、GetText、Acts as Authenticated) つくるぶガイドブログ: Ruby on Rails を使ってひとりでサービスを作ってみよう 10best では、アプリケーションをダウンロードできる場所のURLを登録して、みんなで共有していきます。いわばソーシャルブックマークの、ブックマーク先をアプリケーションのダウンロードページに限定したものです。 今回は以下のような流れで基礎
ネタ元はこのあたり。 SIer と Rails とエンタープライズと エンタープライズにおけるRailsの価値とは 弊社の某エロい人がRoRに萌えており「おお、なんて生産性が高いんだ。もうWebアプリなんて全部これでいいじゃないか。」とか本気で思ってそうなので萎える。言語の違いは時にはビジネスモデルの違いにつながることが理解できないようだ。言語ってのは文化なの!これからはRubyを全面的に取り入れ開発標準もRubyだぁぁぁぁとか言い出したらどうしよう。グーで殴るしかないかw 本来、コード量の少なさや、CoCを前提とした設定の少なさが価値を発揮するのは、メンテナンスの場面です。読み込まないといけないコード量の少なさと、少ないコードの変更で修正ができることが、その理由です。そのためには、大前提として、Ruby(on Rails)らしい、プログラムを作っておくことが必須なので、マネージャはその辺
JRuby core teamのメンバーであるSun Microsystems, Nick Sieger氏は25日(米国時間)、自身のブログにおいてJRubyとRubyの双方を使ったRailsベンチマーク結果を公開した。簡単なベンチマークだが、同氏の発表した結果からはJRubyが運用に耐えうるレベルの性能を実現しつつあることが見えてくる。 これまでJRubyの性能が不十分だという指摘は何度もあった。その都度改善が実施され、間もなくリリースされるJRuby 1.1でも最大の注目点は性能の向上にある。同氏は自身が携わっているプロジェクトがJRubyの採用を決定したことをうけ、JRuby/Rubyの双方でどの程度の性能が発揮できているかを簡単なシングルリクエストベンチマークで調査した。その結果は興味深いものだ。 同氏は「MRI(C Ruby)とRails向けの高速サーバMongrel」、「開発中
JRubyの主要開発者であるCharles Nutter氏は9月27日(米国時間)、Ruby 1.8に完全に対応したRuby-Javaコンパイラを開発したことを発表した。RubyをJavaへコンパイルするコンパイラとしては既報のとおりXRubyが先行していたが、これでJRubyも同様の機能を実現したことになる。特に同氏は同発表において「Ruby 1.8に完全に対応」したという点を強調しており完成度の高さを謳っている。 コンパイラが完成したことでJRubyはインタラプト動作のみならず、コンパイルとインタプリタの両方を組み合わせたランタイム環境としての動作が可能になるため、あらかじめコンパイルしない場合でも実行速度の向上が期待できる。 JRubyではもともと次期開発項目としてRuby-Javaコンパイラの開発および同コンパイラを活用したJRubyの機能強化を掲げていた。コンパイラに関するドキュ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く