タグ

関連タグで絞り込む (145)

タグの絞り込みを解除

Rubyに関するmonjudohのブックマーク (177)

  • メタプログラミングの基本とか - mirichiの日記

    Rubyはメタプログラミングができる言語だ。 高度なことをしようと思うと特異クラスなどの詳細を知る必要が出てくるが、そういうことをそれなりに知っている人でなければ、特異メソッドぐらいは理解できても特異クラスが出てきた時点でよくわからなくなってしまう。 よくある説明とは違う切り口で説明してみよう。 ちょっと長いが気にしない。 1. まず、Rubyでは先頭が大文字の識別子は定数である。 このルールで最もよく使われるのはクラスやモジュールの名前だろう。 これらは定数である。 class Hoge end p Object.const_get("Hoge").name # => "Hoge" p Object.const_get("Hoge").class # => Class Hogeという定数が定義され、そこにHogeクラスを表すClassオブジェクトが入っているわけだ。 つまり上記の定義は(

    メタプログラミングの基本とか - mirichiの日記
  • GitHub - vertiginous/pik: Ruby version manager for Windows

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - vertiginous/pik: Ruby version manager for Windows
  • Ruby Quicktips

    Random Ruby and Rails tips. This blog is dedicated to deliver short, interesting and practical tidbits of the Ruby language and Ruby on Rails framework. Read more... Your submissions are more than welcome!

    Ruby Quicktips
  • DebianにrvmでRubyの作業環境を作る - 偏った言語信者の垂れ流し

    週末Rubyで遊ぼうと思ってて、Debian lennyに環境を作ったメモ。 @a_matsudaさんに教えてもらったページを参考に。 http://wiki.rubyonrails.org/getting-started/installation/linux-ubuntu rvmはこのあたりを参考にした。 rvmの紹介 | feedforce Engineers' blog 必要なパッケージのインストール rvm環境にするので、aptでとりあえずruby1.8と必要なパッケージをインストール。 $ sudo apt-get install build-essential libssl-dev libreadline5-dev zlib1g-dev checkinstall make curl ruby Rubygemsのインストール rubygemsはソースから入れておく。 $ cd ~

    DebianにrvmでRubyの作業環境を作る - 偏った言語信者の垂れ流し
  • Twitter / @a_matsuda/asakusa.rb - フォロー中

    snoozer05 Koji SHIMADA | Sapporo, Japan @midorisky :-)  about 4 hours前

  • qwik.jp - qwik リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

  • Javaメソッドの呼び出し元をツリー表示するスクリプト - うなの日記

    JavaClassを使って指定メソッドの呼び出し元を探索しツリー表示するスクリプトを書いてみました。 引数で指定されたパス以下の*.class,および*.jarに含まれるクラスファイルを解析し、 メソッドの呼び出しコードを収集。 収集した情報を再帰的に探索し、呼び出し元メソッドをツリー形式で出力します。 使い方 $ ./caller.rb <クラスが置かれたディレクトリorJarファイル> <呼び出し元を探すメソッド> 呼び出し元を探すメソッドは「<メソッドが定義されたクラスのFQCN>#<メソッドのディスクリプタ表記>」で指定します。具体的には以下のような形になります。 java.Util.ArrayList#indexOf(Ljava/lang/Object;)I クラスが置かれたディレクトリ or Jarファイルは、「;」区切りで複数指定可能です。 具体例 ↓のようなクラスがあったと

    Javaメソッドの呼び出し元をツリー表示するスクリプト - うなの日記
  • Ruby1.9.2最新動向インタビュー | gihyo.jp

    現在開発が進められているRuby1.9.2の状況などについて、Ruby1.9のリリースマネージャを務めるYugui(園田裕貴)氏にインタビューさせていただきました。12月23日発売の『WEB+DB PRESS Vol.54』の発売に先立ち、その模様をお届けします。 Rubyの『現在』 Q: 2009年初めにRuby 1.9.1がリリースされましたが、1.8系統から1.9系統での重要な変更点はどこでしょうか? A: 最も重要なのは、多言語化対応です(注1)。1.9系統では、同時に複数の言語を扱えるよう、他言語化の手法としてCSI(Code Set Independent)方式を採用しました。システムの内部コードを1つの文字集合で統一する方法ではなく、すべてのエンコーディングを対等に扱っています。この方式では、外部で用いられるコードと内部で用いられるコードが一致するため、不必要なエンコーディン

    Ruby1.9.2最新動向インタビュー | gihyo.jp
  • Mercurialと100%互換なRubyアプリ「Amp」 | Happy My Life

    Mercurialといえば、gitと並んでよく使われている分散型バージョン管理システム。Google Codeやsourceforge.netでも利用可能である。 そしてMercurialと言えばpythonで構築されている事でも有名である。 ただ、pythonであるがために、ソースに手を入れ辛い(それ以前にpythonをよく知らない)、文字化け等でトラブった時もなかなか対応できないという事もままあったりする(pythonを勉強したら済むと言えばそれまでだが) そこで登場するのが、今回紹介するAmp。Mercurialのコマンドであるhgの100%互換を謳っており、Rubyで書かれている 。このRubyで書かれている事が重要。ちょっとソースを覗いてみようか、という気になるし、カズタマイズやトラブルシューティングも(Mercurialよりは)楽にできるはず。 Ampとは Rubyで書かれたM

    monjudoh
    monjudoh 2009/11/24
    Rubyで実装されたMercurial。『将来的には、git, bazaar, svn, cvs, darcsまでをサポートするつもりらしい』
  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • 本を読む RubyKaigi 2009に参加しました

    7月17~19日に、RubyKaigi 2009というイベントに参加しました。プログラミング言語Rubyに関するカンファレンスです。あっという間の3日間だったなあ。講演者やスタッフなどの皆さん、ありがとうございました。 鳥頭の私は、聞いているだけだとすぐ忘れてしまうので、メモをとりながら話を聞きました。実際、メモを見返したら、すでに忘れていることがいろいろあったという次第。とりあえず、メモの整理と内容の復習をかねて、ブログに載せておきます。間違いなどありましたらご指摘ください。 1日目(7月17日) Using Git and GitHub to Develop One Million Times Faster(Scott Chacon) 一番手は、みんな大好きGitHubを作った人の講演。gitの効率的な使い方と、それを実現するための道具としてのGitHubを解説しました。なお、Chac

  • hparser - Hatena Format Parser

    Hatena Format Parser Anyone can edit any page for Ruby. Please edit any bad English you might find. Overview Hparser is Hatena Format Parser. The parser is used at [Hatena Diary](Japanese blog service) Hparser has following features: HTML converter add user custom format remove not used format add user custom converter You can get the file from http://rubyforge.org/projects/hparser/ SYNOPS

  • 開発コアメンバが語るRubyの今とこれから(前編) - @IT

    Ruby 1.9は移行準備オッケー @IT yuguiさんは、2009年2月のDeveloper's Summitの講演で、そろそろRuby 1.8系から1.9系への移行を始めるべきだと主張されてましたね。 園田裕貴氏。裕貴のピンイン表記である「yugui」のハンドル名で知られている。Ruby 1.9系統リリースマネージャで、Rubyコミッタ。1981年生まれ。著書に『初めてのRuby』(オライリージャパン)がある。最近はRailsアプリケーションをよく書いているという yugui ええ、一般のRubyユーザーはRuby 1.9への乗り換えは慎重にという立場の人もいますけど、私はそろそろ移行を考える時期だと思います。 @IT もう1.9に移行してもオッケーだと。 yugui もう根的な仕様が変わることはないという意味でオッケーです。2007年12月に出た1.9.0は、仕様が煮詰まっていな

  • エンタープライズ Rails

    Ruby on Railsによるエンタープライズアプリケーション開発のための書籍です。書ではRuby on Railsが省みることのなかった価値観のひとつであるデータ中心のアプローチに取り組み、これをRailsへと統合する方法を示しています。Railsが得意とするWebアプリケーションに、エンタープライズ分野で培われてきた安定したデータ基盤の構築ノウハウを取り込んでいます。また、そこから一歩進んで、Webサービスによる分散システムの構築や統合というテーマも扱っています。 エンタープライズ開発のエッセンスが詰め込まれた書は、開発現場のアーキテクトおよびプログラマ必携の一冊です。 監訳者まえがき はじめに 1章 全体像 1.1 エンタープライズとは何か? 1.2 ゆっくりと成長する 1.3 すべての部品を理解する 1.3.1 永続化層 1.3.2 アプリケーション層 1.3.3 キャッシュ

    エンタープライズ Rails
  • Martin Fowler's Bliki in Japanese - ThoughtWorksでのRuby

    以下の文章は、Martin FowlerによるRuby at ThoughtWorksの日語訳である。 ThoughtWorksは、2006年から格的なプロジェクトRubyを使い始めた。2008年の終わりまでには、Rubyプロジェクトの数は41個になった。この経験から我々は何を学んだのか。QConの講演に備えて、私は調べてみることにした。ここでは、Rubyの生産性、スピード、保守性など、よくある質問に対する現時点での我々の考えについて述べていく。現時点での我々の結論としては、Rubyは十分に使えるプラットフォームであり、様々な形態のアプリケーションに利用することを真剣に考慮すべきである、というものだ。特に、Ruby on Rails を利用したWebアプリケーションにおいてはそうである。最後に、Active Record のテスティングに対する考えなど、技術的な教訓についても触れる。

  • 日本Ruby会議2009

    Ruby会議2009は、全日程を終了いたしました。多数の方々にご参加いただき、ありがとうございました。 日Ruby会議2010は、2010年8月27日(金)から29日(日)までの3日間、つくば国際会議場で開催します。 最新情報は、公式サイトhttp://rubykaigi.org/2010/jaで随時お知らせしています。 日Ruby会議は、オブジェクト指向スクリプト言語Rubyに関するイベントとしては 世界でも最大級のもので、2006年から毎年開催されています。昨年つくばで開催された 日Ruby会議2008は、3日間でのべ1000人を越える来場者を数えました。 その第4回目となる日Ruby会議2009(略称:RubyKaigi2009)は、2009年7月17日から 19日までの3日間、学術総合センター(東京都千代田区)にて開催いたします。 都内はもとより、関東圏外の方から参加さ

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    monjudoh
    monjudoh 2009/06/19
    『 * 分散しているファイルディスクリプタの監視を一箇所でやらせる * I/O待ちが発生する箇所で停止 * readable/writableになったら再開 という実装にすることで、並列度を上げることが出来ます。』
  • Route 477(2009-06-17)

    ■ [ruby] Rubyの新世代パッケージングシステム、Ripの目指すところ GitHub Rebaseで「Rip」というプロジェクトが開始した、というニュースを見たので調べてみた。 特徴は ディレクトリ・ファイル・github・gemなどいろんなソースからインストール可能。 必ずしもパッケージを「ビルド」する必要はなく、リポジトリから特定のバージョンを直接インストール可能 "ripenv"という、仮想環境機能がある。ライブラリの新バージョンが出たときは、まず新しい環境を作って試してみるとか 依存関係はdeps.ripというテキストファイルに、一行一ライブラリで指定する。バージョンも込みなので、RubyGemsよりきっちり管理できる(?) ということらしい。 状況は まだ始まったばかり RubyGemsを置き換える気はなく、共存すればいいと思っている けど、便利さゆえにシェアが逆転する可

    Route 477(2009-06-17)
  • O'Reilly Japan Community Blog: まつもとゆきひろ『プログラミング言語Ruby』を大いに語るアーカイブ

    まつもとゆきひろ『プログラミング言語Ruby』を大いに語るの最近の記事 この記事は東京、大阪で行われた『プログラミング言語Ruby』刊行記念トークイベントの内容をもとに構成されたものです。このトークイベントの動画はニコニコ動画で公開されていますので、よりリアルな雰囲気を味わいたい方は、そちらをご覧ください。 http://www.oreilly.co.jp/editors/archives/2009/02/ruby-4.html 8回にわたってお届けしてきたこのシリーズも、いよいよ最終回。今回はその他の新しい機能、さらに、まつもとさんの口からは次のバージョンの話も飛び出します。 ラムダ 目立つ機能としては、「->」によるラムダ(λ)を入れたり、「.()」による呼び出しを入れたということですね、やっぱり関数型言語の影響が大きく、ラムダをこんな記号(->)で導入しました。 ― まずこの話があっ

  • 各言語におけるtrue/falseまとめ - 昼メシ物語

    たとえば PHP で、 if ($hoge) { ... } とか書いてあったら、 $hoge がどんな値のときに if の中身が実行されるのか即答できますか。 こういう書き方は多くの言語で可能ですが、言語によって何が真で何が偽になるのかが異なるので、それぞれまとめてみました。 C言語 C言語には bool 型が無い。 0 (int) だけが偽となり、それ以外はすべて真となる。 NULL 定数は stddef.h で以下のように ((void*)0) と定義されているため、偽値として使える。 意見が分かれそうなところですが、個人的にはNULLを偽値として使用するは好きじゃないです。 #ifndef __cplsuplus #define NULL ((void*)0) #else #define NULL __null #endif C++ C++になると bool 型が出てくる。C と同

    各言語におけるtrue/falseまとめ - 昼メシ物語
    monjudoh
    monjudoh 2009/06/05
    truly falsyらへん