1 名前:デフォルトの名無しさん mailto:sage [2009/08/23(日) 21:07:47 ] オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。 まったりと行きましょう。 Ruby Home Page www.ruby-lang.org/ja/ = 前スレ Rubyについて Part 36 pc12.2ch.net/test/read.cgi/tech/1246174168/ 過去スレ・関連スレは >>2-
593 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:34:17 ] フューチャーだから未来のために入れるんじゃないのか
594 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:52:20 ] フィーチャー?
595 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:53:06 ] ときどき futuring 誰それ って書いてあるのを見るとかわいそうに思う。
596 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:53:17 ] バージョンチェックはアフォっぽい所は有るな。 バージョンチェック部分の記述だけで10バージョンぐらい比較してたりしてw
597 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 08:58:18 ] いまさらC言語が30年前に解決している問題で揉めるなんて…
598 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 09:02:21 ] 「どんな未来がサポートされているか」 なんだかかっこいいな。
599 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 09:03:18 ] autoconf系だと、小さなプログラムをコンパイルして 期待どおりの動作をするか(エラーが出ず、出力も想定どおりか) チェックしてたりするな。
600 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 09:48:45 ] >>599 1.8 と 1.9 ではインストールされるファイルが違うという rubygem は前どっかで見た 面倒だからほとんど行われてないけど まあこのスレの論理で言うとバージョンでの分岐や ライブラリインストール時の環境固定でチェックするなんてことは あってはならないわけだが(w あくまで実行時にすべてがチェックされるべきであり
601 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 10:31:45 ] どっちかってと 「メソッドの存在は一緒だし返り値のクラスも同じなのだが返り値の具体値が 1.9 と 1.8 では違う」 というような場合に、非 RUBY_VERSION 派はどう書くのか知りたい
602 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 10:38:41 ] 具体的には?
603 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 10:45:22 ] ちょっと考えてたんだが、なんだろうね String#inspect あたりは違うかもしれん defind?(::Encoding) の範疇かどうかがちと微妙
604 名前:591 mailto:sage [2009/10/05(月) 11:35:02 ] >>594 あばばばば W-ZERO3から入力したから!!入力補完とバック・トゥ・ザ・フューチャーが悪いんや!!! (顔を真っ赤にしながら) で、gemについては ・どうにかしてある機能が実行環境下で存在するか判定 ・機能の有無をFeature.has?(Synbol)とかそんな感じでチェックできるように なんてgemを作っておいて、機能の有無で処理を切り分けたい側は このgemに依存関係を与えておくと。 とはいえ、俺も文字コード関連のほかにはFiberぐらいしか 嬉しいところが思いつかないけどね。
605 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 11:46:49 ] 動作チェックした環境をコメントに書いとくだけでいいよ
606 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 12:09:36 ] >>602 Class#name。 [1.8] Class.new.name # => "" [1.9] Class.new.name # => nil
607 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 12:37:02 ] 俺も>>584 に同意で、>>601 みたいなケースがあったなら素直にバージョン判定でいいじゃない そこでdefine?使う理由がないし、>>603 三行目はdefine?派の主張ねじまがってないか?w ただライブラリなりアプリなりのユーザが制御する方法を用意すれば 判定方法にこだわる必要なくなるんじゃないかとずっと考えてた # 1.9の場合 require 'hogelib' # 1.8の場合 require 'hogelib/compat-1.8' require 'hogelib' 1.9指定もなにかrequireさせて、単体呼び出しは自動判定というインターフェイスのほうがいいのかな? 「自動判定手段に納得いかないなら手動ないし自作コードで判定しろよ」と言えるようになる requireするファイルの中身は依存コードをモジュール化して切り出す方が理想っぽいけど めんどくさいしフラグ立てておけば十分だろうw COMPAT_1.8 = true
608 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 12:45:45 ] ならsite_ruby/1.8とsite_ruby/1.9.1にインストールしろよ。
609 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 12:57:25 ] >>608 >>455
610 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 14:56:48 ] 1.8は捨てろ。 1.8はもうダメだ。終わった。 1.9で動かないrubyプログラムは捨てろ。書き直せ。
611 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 19:54:36 ] 走れ描け走れ走れ
612 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 19:58:20 ] mswin32でユニコードファイル名扱えるようにしておくれ。
613 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:04:48 ] >>610 最近始めたんだけど、そんなに違うの?
614 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:12:59 ] >>613 文字列の文字エンコードとファイルIOが、互換性保ちつつ書くのがとてもめんどくさいレベル 1.8のほうが普段遣いの範囲では直感的なので、1.8で慣れてから1.9に移行するのがベスト
615 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:17:41 ] そんなにエンコーディング関係にはまるってのは「普段遣い」の範囲が常人とはかけ離れてる説
616 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:19:25 ] >>609 > # 1.8の場合 > require 'hogelib/compat-1.8' こんなマネをするくらいなら、ということだよ。
617 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:21:58 ] なんだか意味不明だけど、1.9でもclass Stringは未だにutf8じゃないってこと? ところでjava, c#とおなじで、文字列用クラスで内部エンコードがutf16のクラスってのはいつ組み込みクラスになるんですか?
618 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:29:13 ] うんにゃ、バイト列+エンコーディング情報 エンコーディング情報を文字列オブジェクトごとに保持してる Shift_JISの文字列 + UTF-8の文字列 はエラー /Shift_JISの日本語/ =~ UTF-8の文字列 もエラー
619 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 20:42:02 ] >>617 他言語対応には大きく2通りのアプローチがあって、 ・巨大な文字集合を扱える一つの内部表現方式を抱えて 外部表現との入出力は都度変換/逆変換する (内部表現は普通unicode系の何か) ・ある文字コードの取り扱い(文字の区切りとかマッチングとか)を 文字コードごとに用意しておいてそのとき扱ってる文字コードで 処理を切り替える という感じ。 それぞれに一長一短があり、 前者だとJavaやWindows 後者だと主に昔からのUNIXが採用している。 Ruby1.9は後者を採用した。
620 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:16:59 ] 詳しくありがとうございます。 エンコードを持つ方式なんですか。 rubyはもともとregexpが主要機能なんで、内部はutf8で統一の方がいいと思いますけど、なんか事情があるんでしょうね。 それと文字処理するなら、メモリなどから見て非効率でもエンコードを統一しないと出来ませんよ。 処理とはあまり関係ないところについて時間をかけて無駄に脳みそ使いたくないでしょ。
621 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:19:30 ] あともう一つお聞きしたいんですけど、ほぼPOSIX互換の言語はruby以外にありますか? 言語上、ライブラリでスレッドやパイプ、IOを持ってて、POSIXレベルまで充実しているってことです。
622 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:27:54 ] Rubyこそが唯一あなたにふさわしい言語です。 だから他の言語にこないでね。
623 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:33:17 ] >>620 POSIXという単語を知っててCSIを知らないのがよくわからないけど。 ある文字コードでの文字列処理関連のプリミティブな処理を自力で実装して 処理系に教えてやれば、どんどん対応文字コードを増やしていけるのがCSI。 この場合実装のために汗を流す人間と受益者がたいてい一致し、 余所に迷惑をかけることなく目的を達成できたので 昔はこの方法が主流だった。
624 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:36:05 ] あれ? 昔rubyを触ったときにあるブログで聞いたんですけど、rubyは(処理が遅くても)もともともposix互換あたりを目標に作ってたんじゃないですか? 実際現在では、OSという概念が既にハードから分離されてますし・・・・
625 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:38:24 ] 言語の用語として「POSIX互換」なんて用語は知らないんだが。 (UNIX-like OSのシステムコールについてならわかるのだが) 「POSIX互換」てなんのことだか説明してくれ。
626 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:45:36 ] >>623 というよりも、普通にjavaとかjsとか使えるんでどうでもいいですけど。 ただそれらは電卓代わりとかちょっと数値計算(四元数とかほかでサポートがあまりないもの)で使うとなるとちょっと面倒なんで。 もともとCに慣れてるからやはりmaximaとかmathematicaとか構造化言語か純粋OOPに基づいた設計じゃない言語は扱いにくく、あんまりです。 perlも取って付けた無駄が多くてあんまり。
627 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:47:26 ] >>625 言語上、ライブラリでスレッドやパイプ、IOを持ってて、POSIXレベルまで充実しているってことです。 実際現在では、OSという概念が既にハードから分離されてますし・・・・
628 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:48:56 ] >>625 もう少し脳みををやわらかくしたほうがいいですよ。 あなたは未だに「Web 0.91」ですか?w
629 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:52:20 ] 脳味噌がほおむぺえじであばばばばーでふにゃんふにゃんの人がいるようでつね。
630 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 21:52:33 ] >>627 Rubyはライブラリでスレッドやパイプ、IOを持ってて、POSIXレベルまで充実していてうらやましいな PerlやPythonはスレッドという概念が存在せずプロセス一辺倒だし IPCは全部メッセージングだ しかも作者がUNIX嫌いでWindowsに傾倒してしまっている ここらへんはDebian使いのMatz(Rubyの作者)とは大きな違いだ だから悪いことは言わない。Rubyにしとけ
631 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:03:44 ] >>630 まあ簡単には調べてみたんですけど、やっぱりrubyしかないんですね・・・ あとはjava, dotnetのVMものですけど。 まっつさんはもともとPOSIX(と機能上)互換を目指してライブラリを充実していったという話しなんですけど。 ルビーですけど、個人的にはパイソンのタプル型(イミュータブル型)があれば言うことないと思います。 いま大黒なんとかのPDFを読み返しているんですが、彼の文章は非常に読み難いので他によいガイドというか言語解説レファレンスないですか? ruby-doc.orgも使ってますが日本語がいいです。
632 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:18:30 ] ハチドリ本でいいんじゃないの?
633 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:20:29 ] yugui本はハチドリじゃなかった、キリンだっけ
634 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:30:58 ] 〃´⌒ヽ . , -―― メ/_´⌒ヽ / / ̄ ´ヽ ヽ . / , /// ト. ! 、 丶ヽ l / /(((リ从 リノ)) ' | i l . ヽノ .V l l ,=! l /// ///l l ねんがんのキリン本をてにいれたぞ! l ヾ! ', l ヽ_フ l l | ヽヽヽ // l ヾ≧ , __ , イ〃 li (´`)l {ニ0ニ}、 |_"____ li /l, l└ タl」/l´ `l リヽ/ l l__ ./ |_________| ,/ L__[]っ / / ::::::::/ ヽ、 :: ::: ::: ::::::::::::::::::::::::::::::::: :::::/ lハ ::: : :: :::::::::: ::::::::::::::::::::::::::::: ::::l l /ノリ ::: : :: ::::::::::: ::::::::::::::::::::::::::::: :::| /) / ::: : :: ::::::::: ::::::::::::::::::::::::::::: ::l /イ/| . :. :. .:: : :: :: :::::::: : :::::::::::::::::: / / ||/ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 7l:::::::::::::::::::: i /_,/i!/ Learning Ruby / l:::::::::::::::: l 人 / Michael Fitzgerald / /:::::::::::::::: l / /⌒ヽ ハ,,ハ / /:::::::::::::::: l /il | ) ( ゚ω゚ ) / /:::::::::::::::: ll l i! `ー、\___ n__/_/:::::::::::::::: lヽ l |\. \ /⌒〉::::::::::::::
635 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:48:04 ] >>632-633 rubyは他の言語と文法・リテラルが結構似ていて、突飛なruby独自の概念があるわけではないので 実際は充実したクラスAPIのレファレンスがあればいいんですけど。 もともと他の言語を使えるわけで、下らない解説とか主義思想・小話なんかよりも各APIの典型的な使い方だけでいいですよ。 その点JAVA(英語サイト)の方が勉強しやすいし、習得も早いんじゃないですか。 英語でしたがやっぱりruby-docで我慢します。
636 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 22:54:07 ] >>635 こういうのを小賢しいって言うんだろうか? doc.okkez.net/
637 名前:デフォルトの名無しさん mailto:sage [2009/10/05(月) 23:23:09 ] >>629 あばばばばー乙
638 名前:619,623 mailto:sage [2009/10/06(火) 00:07:56 ] 普通に釣りだと思うけどなあ。 具体的に言うと ttp://ja.wikipedia.org/wiki/%E3%83%9C%E3%82%B0%E3%83%80%E3%83%8E%E3%83%95%E4%BA%8B%E4%BB%B6 の劣化コピー。さらにこれの元ネタとされるソーカル事件が1994年だからそこから数えると15年ほど周回遅れと思われる。 おまけのネタ ttp://ja.uncyclomedia.org/wiki/%E3%82%BD%E3%83%BC%E3%82%AB%E3%83%AB%E4%BA%8B%E4%BB%B6 あえてやるならこれぐらいのヒネリは欲しいところ。
639 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 00:27:21 ] いや、別に彼がこのスレ住人の知的誠実さを試しているわけではないので ソーカル事件とは根本的に違うだろう
640 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 03:16:00 ] >>639 だからあえてボグダノフ事件の方を貼ってるのでは
641 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 10:10:12 ] 質問者が誠実でないことだけは明らかだしな。
642 名前:デフォルトの名無しさん [2009/10/06(火) 10:50:06 ] . 1. HTML で検索した結果 1〜10件目 / 約5,040,000,000件 . 2. PHP で検索した結果 1〜10件目 / 約2,970,000,000件 . 3. Java...... で検索した結果 1〜10件目 / 約 835,000,000件 . 4. Forth. で検索した結果 1〜10件目 / 約 323,000,000件 . 5. Ruby.. で検索した結果 1〜10件目 / 約 275,000,000件 . 6. perl..... で検索した結果 1〜10件目 / 約 245,000,000件 . 7. Python... で検索した結果 1〜10件目 / 約 204,000,000件 . 8. pascal... で検索した結果 1〜10件目 / 約 170,000,000件 . 9. Delphi で検索した結果 1〜10件目 / 約 127,000,000件 10. VisualBasic...で検索した結果 1〜10件目 / 約 121,000,000件 11. lisp... で検索した結果 1〜10件目 / 約. 26,700,000件 12. fortran で検索した結果 1〜10件目 / 約. 21,300,000件 13. COBOL で検索した結果 1〜10件目 / 約. 18,500,000件 14. HSP で検索した結果 1〜10件目 / 約. 12,300,000件 15. FreeBasic.. で検索した結果 1〜10件目 / 約 6,320,000件 16. Tcl/Tk. で検索した結果 1〜10件目 / 約 4,940,000件 17. QBasic で検索した結果 1〜10件目 / 約 4,190,000件 18. VisualC.... で検索した結果 1〜10件目 / 約 1,360,000件 19. DarkBASIC. で検索した結果 1〜10件目 / 約 1,320,000件 20. BasicStudio で検索した結果 1〜10件目 / 約 304,000件 21. N88basic. で検索した結果 1〜10件目 / 約 215,000件 22. f-basic で検索した結果 1〜10件目 / 約 109,000件 23. ActiveBasic で検索した結果 1〜10件目 / 約. 89,800件 24. 99BASIC.... で検索した結果 1〜10件目 / 約. 11,500件 3Dprogramming で検索した結果 1〜10件目 / 約794,000件 2Dprogramming で検索した結果 1〜10件目 / 約. 57,400件 intel で検索した結果 1〜10件目 / 約729,000,000件 amd で検索した結果 1〜10件目 / 約355,000,000件
643 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 11:44:53 ] FORTH大健闘じゃんw Chuck Mooreは偉大だわ www.simple-talk.com/content/article.aspx?article=775
644 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 11:50:42 ] たとえばforthは英語の副詞でもあったりするけど、考慮してるのかな。
645 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 11:56:50 ] namespaceが違うとはいえRubyもネット検索しやすい独自の名前にすりゃよかったのに
646 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 12:06:51 ] Rubyはまだマシだろ 一番検索しづらいのはC
647 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 12:14:52 ] いやそれは単純に検索エンジン側の不手際だから 「プログラミング言語のほうのC」「プログラミング言語のほうのRuby」と指定して プログラミング言語のほうの結果だけを返さない検索エンジンのほうが一方的に悪い どうやって実現するのかまでは知らん
648 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 13:05:10 ] 単一ワードで検索する方が悪いだろww
649 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 13:19:31 ] 何に期待して「C」と検索するんだ
650 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 13:31:28 ] Cは知ってても、それだけじゃ困るからだろ
651 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 13:40:00 ] 単語レベルで意味が混ざるIconとかのほうが悲惨じゃなかろうか
652 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 15:07:06 ] Perlみたいに英語の単語にないつづりがいいね
653 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 15:30:49 ] でも本当は、Pearl にしたかったんだよね。
654 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 16:11:52 ] そう 既に Pearl という言語があったんで、仕方なく Perl にしただけ 唯一性の意図があったわけでは全くない 時々勘違いして痛いこと言う人がいるのがたいへん味わい深い
655 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 17:03:48 ] gloria -> pearl -> perl
656 名前:デフォルトの名無しさん [2009/10/07(水) 05:37:29 ] るびまって今どうなってるのかな? 昨夜(おとといの夜)読んでて途中で見れなくなったんだけど、 30時間ちかくたった今もまだ。 頼みの綱のつもりでいた記事あったから、非常に今あせってるw
657 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 05:43:12 ] るびまはマネタイズされてないから時々止まります 鯖代捻出方法の案があれば教えてあげるとみんなよろコンブ
658 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 05:55:23 ] そんな理由かいw せめてブラウザのキャッシュされるようになってれば・・・
659 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 06:02:05 ] あれってなんでだろうね 確かに訂正前の不正確情報が残ると不便だが、 ぶっちゃけそんな事後更新されてるわけでもないだろうに オフラインモードで読めないことのほうが遥かに面倒
660 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 07:51:35 ] 23号までなら緊急避難的にarchive.orgで代用可
661 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 08:44:58 ] ルビィ本とかのアフィでも張って鯖代稼げば? ググルアフィぐらいじゃマイナー過ぎて儲からないだろうけど。
662 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 11:35:54 ] そもそもいくら必要なんだ?ん?
663 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 12:09:35 ] 富豪的サーバ運営というやつですね
664 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 12:12:47 ] 富豪のワリには風呂に入ってないから異様に臭いw
665 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:28:26 ] 自己紹介乙
666 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:29:38 ] 自己紹介乙wwwwwww
667 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:42:35 ] 頭がすこしよわい人は、「相手の心の持ちよう」を想像する能力がなくて、 罵倒の際に「相手が言われていやだと思うこと」ではなく、 「自分が言われていやなこと」をベースに罵倒文句を考えるので 結果として自分自身のコンプレックスを大声で宣伝することになってしまうらしい。 これがいわゆる「馬鹿の罵倒は自己紹介」のメカニズムなんだとか。
668 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:46:56 ] 自己紹介乙wwwwwww
669 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:47:46 ] 全米が噴いた( ´,_ゝ`)プッ
670 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:54:07 ] 連投するから馬鹿がバレバレw
671 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 13:55:13 ] ジサクジエンバレバレw
672 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:17:32 ] カタカナで書かれると違和感があるね ルビー開発者のまつもと氏を松江名誉市民に www.nikkei.co.jp/news/retto/20091006c6b0601w06.html
673 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 17:01:42 ] ハード障害だそうだ。もうちょい待て。
674 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 17:22:11 ] >>664 は二人の増井氏のことを知らないと分からないネタだな。
675 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 17:17:52 ] 1.9の正規表現で名前つきキャプチャが使えるようになったけど 無名キャプチャと名前つきキャプチャが同時に使用できないのは使いにくいと思う 名前つきキャプチャが使われると、無名キャプチャは無効になってしまう /(1)(2)(3)4/.match "1234" # => #<MatchData "1234" 1:"1" 2:"2" 3:"3"> /(1)(2)(3)(?<four>4)/.match "1234" # => #<MatchData "1234" four:"4"> Perlみたいに同時使用できた方がいいのに >perl -e "'1234' =~ /(1)(2)(3)(?<four>4)/;print qq!$1 $2 $3 $4 $+{four}!" 1 2 3 4 4 よく知らないが PythonもPerlと同じで同時に使用できるっぽい 鬼車はオプション選択でどちらの動作でも可能みたい
676 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 19:25:31 ] それは直した方がよいね
677 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 20:26:58 ] これはひどい
678 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 21:07:34 ] ()が(?:)等価になるのだとしたら、ちょっとうれしいような、まぎらわしいような
679 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 21:56:41 ] しかし名前付キャプチャって、書くときはいいが読むときはなんか死にそうになるような気がする ただでさえ可読性が高いとは言えない正規表現がさらに膨張するわけだし、それなら括弧を一つずつ数えてもいいかなと 直らなくてもいいや
680 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 22:06:14 ] そういえば、Rubyのライセンスって結局どうなるの? ruby-talk見ても、議論してるのは分かるんだけど 最終的にどうなったのか全く分からん そもそもまだ結論が出てない? あと、るりま(新リファレンス)のライセンスも気になる
681 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 22:18:41 ] るりまは CC 3.0 BY ってことで話を進めてるっぽい。 12月が目処だと。
682 名前:デフォルトの名無しさん [2009/10/09(金) 00:04:03 ] 【パソコン/島根】プログラム言語「ルビー」開発者のまつもと氏を松江名誉市民に tsushima.2ch.net/test/read.cgi/newsplus/1254874530/
683 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 13:46:36 ] >>680 何、ruby-talkでやってんの? リンクきぼん
684 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 12:13:20 ] printfは統一感あるけど、regexpは後付けばかりで混沌としてるからruby独自路線でrexpepのフォーマットを再定義して欲しい。 \bとかもそうだけど、とくにperlがgnuのころからあったフォーマットをセンスもなく勝手拡張したせいでもう取り返しがつかないからね。
685 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 12:22:56 ] $なんたら系全廃止してから考える
686 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 12:37:48 ] $:.push("a") とかかなり違和感あるけどね。 javaから見ると、そもそも 1 .+ 2 .* 3 なんかできるのはかなり嫌われるんだけど、そういうのと同じだろうと思う。 $てのはパールとの下位互換として認めて、もう必要な人用ってことで諦めたほうがいいよ。
687 名前:デフォルトの名無しさん mailto:sage [2009/10/10(土) 14:35:06 ] 名前つきキャプチャは他言語と同じ挙動にして欲しいな ググったら .NET の正規表現も 同時使用できるっぽい どうも、同時使用できるのが主流なような というか、Rubyが異端? >>678 正規表現のどこかに (?<x>) とか入れれば ( ) はキャプチャしなくなるね 念のために 予約語にしておくと /(?<xxx>)/ =~ 'foobar' とかやって ローカル変数 xxx が定義されたり、変更されてしまうのを防げる /(?<end>)/ =~ 'foobar' だとendは予約語なので変数としては定義できずに無視される
688 名前:,,・´∀`・,,)っ-○○○ mailto:sage [2009/10/10(土) 17:05:56 ] >>644 それを言うならRubyはHTMLタグ(ry
689 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 09:27:01 ] 本家をLLVMに〜というのも面白そうだが。 LLVMベース、Snow LeopardのGCDサポート Rubyのコンパイルや並列処理対応、MacRuby最新ベータ登場 www.atmarkit.co.jp/news/200910/08/macruby.html □YARV→LLVM Sansonetti氏は、ネイティブコードへのコンパイル機能がないことと、 GIL(Global Interpreter Lock)の存在によって、マルチコアを生かすような 真の並列処理が難しいことを挙げている。 □並列処理 GCDは多量のタスクをキューに入れ、それを1つずつ取り出してスレッドプールで処理する という処理モデルを抽象化したAPIを提供する。 C/C++/Objective-C向けには、ブロック と呼ぶクロージャ風の独自文法を導入してタスクのキューイングを行う形だったが、 MacRubyではRubyのブロックが使える。 □実行時最適化のJIT(Just-in-Time)と、 事前コンパイルのAOT(Ahead-of-Time)の双方をサポート AppleがGCとBlockをC1Xに提案 www.open-std.org/jtc1/sc22/WG14/www/docs/n1370.pdf
690 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 18:41:20 ] 1.9って、ひょっとして今後おおきな変更はいる?さっきProgramming Ruby 1.9という本を買ってしまったのだが……
691 名前:デフォルトの名無しさん mailto:sage [2009/10/11(日) 18:47:11 ] 1.9.1は「今後大きな変更を入れないためのリリース」という位置づけ でもある(訳: だからライブラリ作者は将来の変更を心配せず対応を始めろ) ので、ドラスティックな変更は入らないと思う。 # 100年後くらいに2.0が本当に出る段になったらそりゃ変るだろうけど。
692 名前:デフォルトの名無しさん mailto:sage [2009/10/12(月) 00:07:34 ] やだ…なんか頼もしいレスがついてる…ウホッ
693 名前:デフォルトの名無しさん [2009/10/12(月) 12:04:25 ] 初心者な質問じゃないかと思うのですが、dbiのソースを見ているのですが、いきなりPGconnというオブジェクトが出てきます。 dbiのソースをgrepしても見つかりません。どこに定義があるのかどうやれば分かるでしょうか? dbd-pg-0.3.8/lib/dbd/pg/database.rb: @connection = PGconn.new(hash['host'], hash['port'], こんな感じで急に出てきます。