このサイトについて このサイトと“Code Puzzle”は、任天堂株式会社が採用広報活動のために運営しているものであり、商品・サービスの宣伝や新作ゲーム情報の提供を目的としたものではありません。 掲載内容に関するすべての著作権は任天堂株式会社に帰属します。法律により認められた範囲を除き、コピー等の利用は固くお断りします。 このサイトで掲載している“Code Puzzle”は、興味を持っていただいた技術者の方々に楽しんでいただくために公開しているものですが、“Code Puzzle”を解かれた方々に対して、景品をお渡ししたり採用におけるメリットを提供することはありません。 また、“Code Puzzle”の解法や内容に関するお問合せには回答いたしませんので、あらかじめご了承ください。
$Id: index.html,v 1.6 2004/07/20 23:08:12 aamine Exp $ この文書は書籍『Rubyソースコード完全解説』のHTML版です。 ただし初校段階の原稿をベースにしているため、 書籍では修正されている間違いが残っている場合があります。 予め御了承ください。 2004-02-16 に全章を公開しました。 目次 まえがき 序章 第 1 部「オブジェクト」 第 1 章「Ruby言語ミニマム」 第 2 章「オブジェクト」 第 3 章「名前と名前表」 第 4 章「クラス」 第 5 章「ガーベージコレクション」 第 6 章「変数と定数」 第 7 章「セキュリティ」 第 2 部「構文解析」 第 8 章「Ruby言語の詳細」 第 9 章「速習yacc」 第 10 章「パーサ」 第 11 章「状態付きスキャナ」 第 12 章「構文木の構築」 第 3 部「評価」 第
ReverseHttp面白いですね。 ReverseHttp Tunnel HTTP over HTTP, in a structured, controllable, securable way. Let programs claim part of URL space, and serve HTTP, all by using an ordinary HTTP client library. http://www.reversehttp.net/ ただ勘違いされやすいのが「何がReverseなの」という部分。通常ブラウザからリクエストが送信され、それに対する応答がサーバから返されます。ReverseHttpはサーバで何かアクションが起きた場合に、ブラウザ側がその通知を受信する...なんて事が出来るプロトコルです。仕組みはcometというlong pollに似た仕組みで、サイトのdemo
ある人の希望で、6ニムトをネットで対戦したいと言うことで作成中です。 とりあえず、rubyで書いてます。StarRubyを使ってGUIを作ろうかと思ってますが、とりあえずルールを実装したのでCUI版のシングルゲームを公開してみます。 とても適当なので、要望などあったら色々とご指摘ください。COMのAIは適当に書いただけなので、もうちょっとましなルーチンを実装してくれる人も募集中です。 そんな訳で、やってみたいと言う方はこちらからどうぞ。 http://taoe.jpn.ch:8080/cui_nimmt.zip 追記: 6ニムトって何?って方は、http://www5a.biglobe.ne.jp/~nu-nu/illust/etc/6nimmt.htm に分かりやすいルール説明がありました。
今仕事でRailsアプリケーションを組むときに、test/unitじゃなくてRSpecを使ってる。mock周りの使い勝手がいいとか、語彙が馴染みやすいとかいろいろ魅力があるんだけど、その「可読性」を保つにはなかなかコツがいると思う。言うまでもなくRSpecはRubyのコードを「英語の表現として自然に見える」ようにすることを意図して語彙や書き方を決めている。これは英語圏のエンジニアには非常に素敵なことではあるんだけど、英語が苦手で英作文なんて始めて数分で泣きたくなるようなへたれ外国語学部生にとっては正直やっかいだし、周りの人達の大半は英語に慣れていない人達*1だったりするので、せっかく可読性が高い綺麗な表記でさえむしろ意図を理解する妨げになったりする。いっそドイツ語で書いて「お勉強」に活用してやろうかという衝動に駆られたけども、誰一人として読めない上に一週間後の俺ですら理解に苦しみそうなので
『るびま』は、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 直
starruby.info 2020 Copyright. All Rights Reserved. The Sponsored Listings displayed above are served automatically by a third party. Neither the service provider nor the domain owner maintain any relationship with the advertisers. In case of trademark issues please contact the domain owner directly (contact information can be found in whois). Privacy Policy
現在、Rubyになんらかの形で絡んでいる人には、ある切り口でみると、大きく分けて2種類の人がいると言える。 それは、オープンソースの世界に馴染んでいる人と、そうでない人だ。 いくつか具体的な例を挙げるなら、 ・Rubyは自分でコンパイルして使うものである。 ・ソフトウェアはマルチプラットフォームが当たり前。 ・普段はLinuxを使っている。仕事でしかたなくWindowsも使う。 という感じ(決め付けではなく、あくまでもそんな感じ)の人はオープンソースな人であり、 ・ソフトウェアは実行形式のものをダウンロードするのが当たり前。 ・OSなんてWindows一択だ。 ・作ったソフトもWindows専用で何も問題はない。 と(こっちは決め付けで)考えるのがそうでない人だ。 これは、どの世界に身を置いているかという話であり、お互いにそういう人が存在していることは把握できるが、その考え方、感覚を本当の
はてなダイアリーが AtomPub で編集できるようになったので、早速 fuse を使ってファイルシステムを作ってみました。こんな感じに使えます。 http://rails2u.com/tmp/diary_fuse/fuse.htm (動画) /create に保存すると現在時刻で作成 /20080820101010 など、エントリーを編集可能。保存で更新。 rm するとエントリーを削除 /\d{14} 的なファイル名で保存すると、その時刻のエントリーを作成 などなど。Ruby の FuseFS を初めて使ってみましたが、結構簡単にファイルシステムをいじれて便利ですね。ちなみに本文の改行周りがおかしくなるというアレな挙動をして、全然実用できませんが、AtomPub 使うとこんな事もできるよーという例として見ていただければ。 ソースコードは以下です。
Ruby 1.9 の新機能のひとつに「lambda { ... } を -> { ... } と書ける」というのがあります。この表記は反対意見が根強い *1 ですが、確実にすばらしい点があって、全部記号だということです。これによって Ruby が記号だけでチューリング完全になります *2 。 デモとして、brainfuck インタプリタを記号だけで書いてみました。 $___,@_,@__,$_=(@@__="")=~//,?#=~/$/,->(_){_<(__="####"=~/$/)**__&&(@@__<< _;@__[_+@_])},[*$<]*@@__;@__[$___];$____,$_,@___,$__,@__=$_[@_+($_+?!=~/!/ )..-@_],$`,[],[],->(_){(__=$_[_];__=~/[><+\-\.,]/?$__<<$_[_]:__==?
Webアプリケーションのテストは面倒くさい。HTTPでゲットするだけであれば良いが、ポストしたり、JavaScriptでレンダリングしてあったりと、動作も複雑だ。それらを全て網羅的にテストするのはなかなか難しい。 自動操作中 そこでテストにブラウザを使ってみよう。自動操作することで、テストの効率化をはかれる。 今回紹介するオープンソース・ソフトウェアはFirewatir、Firefoxを自動操作するソフトウェアだ。 FirewatirはIEをRubyを使って自動操作するソフトウェア、WatirのFirefox板とでも言うべきソフトウェアだ。実際、読み込むファイル等は違えども全体的な操作はWatirと同じスクリプトで動作する。 操作中のターミナル 実際の使い方はFirewatirの提供するXPIをFirefoxにインストールし、JSSHを起動する。そしてGemを使ってFirewatirをイン
RubyCocoaでスクリーンセーバを作る手順を解説する。 MacOSのスクリーンセーバ MacOSでは以下の手順でスクリーンセーバを作ることができる。 ScreenSaverViewクラスを 実装して.saverという拡張子を持つbundleを作る。 定期的に呼ばれる animateOneFrame メソッドを実装する。 このバンドルを/System/Library/Screen Saver/に置く。 XCodeにスクリーンセーバのテンプレートは用意されていないが、 「Cocoa Bundle」のプロジェクトを作成し/ ScreenSaverViewのサブクラスのObjective-Cプログラムを追加し/ 拡張子をsaverに変更すれば スクリーンセーバ用のbundleをビルドすることができる。 RubyCocoaでの実装 ScreenSaverViewのサブクラスを直接Rubyで書くこ
Matz日記 で紹介されている google-sparsehash を眺めてみた. ひさびさに Google 気分. :~/src/sparsehash-0.8 omo$ wc `find src/google/ -type f` 253 1348 10336 src/google//dense_hash_map 237 1309 9884 src/google//dense_hash_set 238 1244 9616 src/google//sparse_hash_map 223 1214 9245 src/google//sparse_hash_set 919 4776 37957 src/google//sparsehash/densehashtable.h 42 189 1187 src/google//sparsehash/sparseconfig.h 884 4642 371
Java Ruby on Railsのfixtureという機能は有名なので皆さんご存じかと思います。JavaでいうJUnitのTestCaseクラスに、 fixture :test と書くだけでtestというテーブルにtest.ymlという名前で用意されたテストデータが投入されるという機能です。 同じような機能はJavaでもかなり以前からDbUnitとして提供されてきましたが、使い勝手という点で圧倒的にfixtureが勝っている。というのは、DbUnitは汎用的なライブラリなので使うためにはDBへの接続定義をコードで書いたり、ロードするxmlファイルを探したり、といろんな手間があったのです。 DbUnitはデータベーステストのデファクト・スタンダードなのでJavaプログラマなら一度くらいは使ったことがあるかと思います。私も仕事柄いろんなところのアプリケーション開発環境を構築するのを手伝いま
[PR] フロアコーティング (help authorNari) あほ������ ������やろう。 (show struct)
というわけで昨日の Ruby のオブジェクトを Java に渡す記事をふまえて、いよいよ「対戦 Blokus」の思考ルーチンを実際に Ruby で書いてみる。 「対戦 Blokus」の思考ルーチンは、interface IComputer の implements である abstruct class AbstractComputer を継承したクラスとして実装、そのクラス名を blokus.properties に記述することで組み込まれる。 このクラス(あるいは相当品)を Ruby で書けるようにするのが目指すゴールだ。 以下、ターゲットアプリケーションに沿って具体的に説明していくが、「共通インターフェースを持つクラスを properties に書いておいて、必要なときにインスタンス化して使う」という Java で一般的な設計に適応するケースとして読んでもらえれば、ほかのアプリケーショ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く