[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 05/09 09:59 / Filesize : 99 KB / Number-of Response : 425
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Rubyについて Part 33



1 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:10:50 ]
オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。

Ruby Home Page
www.ruby-lang.org/ja/

= 前スレ
Rubyについて Part 32
pc11.2ch.net/test/read.cgi/tech/1215531152/

過去スレ・関連スレは >>2-

2 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:13:00 ]
Ruby 初心者スレッド Part 20
pc11.2ch.net/test/read.cgi/tech/1214498119/

【ActiveScript】RubyをWindowsで使うスレ【GUI】
pc11.2ch.net/test/read.cgi/tech/1155031689/

Rubyの宿題教えてください。2限目
pc11.2ch.net/test/read.cgi/tech/1200175247/

Ruby>>>>>Java
pc11.2ch.net/test/read.cgi/tech/1158807229/


【↓アンチ系】

Rubyについて(アンチ専用) Part003
pc11.2ch.net/test/read.cgi/tech/1207233348/

Rubyは難しすぎ
pc11.2ch.net/test/read.cgi/tech/1156496224/

【カルト】Ruby開発者Matz【モルモン】
pc11.2ch.net/test/read.cgi/prog/1148712641/


3 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:13:50 ]
Rubyリファレンスマニュアル刷新計画
ttp://doc.loveruby.net/
ライブラリ一覧
ttp://doc.loveruby.net/refm/api/
RubyExtensionProgrammingGuide
ttp://i.loveruby.net/w/RubyExtensionProgrammingGuide.html
Ruby Hacking Guide
ttp://i.loveruby.net/ja/rhg/
Symbol < Stringも止める。
ttp://www.rubyist.net/~matz/20061107.html#p03
クラスローカルインスタンス変数
ttp://www.rubyist.net/~matz/20061117.html#p02
クラス変数
ttp://www.rubyist.net/~matz/20070104.html#p03
ローカル変数
ttp://www.rubyist.net/~matz/20070112.html#p04
可視性メモ
ttp://www.rubyist.net/~matz/20070208.html#p04
ttp://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30107
ttp://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30275
YARV without 1.9
ttp://www.rubyist.net/~matz/20070215.html#p01
ttp://www.atdot.net/~ko1/diary/200702.html#d22
ttp://i.loveruby.net/d/20070223.html#p01
JSON
ttp://json.rubyforge.org/
ttp://webos-goodies.jp/archives/51019710.html
ttp://webos-goodies.jp/archives/51071565.html
YAML
ttp://www.ruby-lang.org/ja/man/?cmd=view;name=YAML
ttp://jp.rubyist.net/magazine/?0009-YAML
ttp://www.namikilab.tuat.ac.jp/~sasada/prog/yaml.html

4 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:14:28 ]
Ruby/Gtk+
ttp://www.unixuser.org/~haruyama/software/goRua/
ttp://takeposo.sakura.ne.jp/windows/environment/rubygtk.html
ttp://ruby-gnome.sourceforge.net/
ttp://ruby-gnome.sourceforge.net/programming/intro.html
ttp://ruby-gnome2.sourceforge.jp/
ttp://psux1.kek.jp/thitoshi/ruby/gtk/
ttp://www.rubycgi.org/ruby_gtk_book/
ttp://ruby.gfd-dennou.org/products/cygwin/index-j.html
ttp://www.magicianmaster.jp/tdiary/?date=20040912

5 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:15:00 ]
Ruby on Rails
pc11.2ch.net/test/read.cgi/tech/1191381506/
ttp://jp.rubyist.net/magazine/?0004-RubyOnRails
ttp://www.onlamp.com/pub/a/onlamp/2005/06/09/rails_ajax.html
ttp://kyotosanga.com/gaku/archives/2006/01/ruby_on_rails_a.html
ttp://blog.hacklife.net/archives/50190377.html
ttp://www.metadata.co.jp/web20/ohba/060718_Rails/
ttp://japan.cnet.com/news/ent/story/0,2000056022,20089986,00.htm
ttp://japan.cnet.com/interview/story/0,2000055954,20094959,00.htm
ttp://journal.mycom.co.jp/articles/2006/07/31/radrails/
ttp://www.atmarkit.co.jp/fjava/column/andoh/andoh29.html
ttp://www.atmarkit.co.jp/fjava/column/andoh/andoh30.html
ttp://www-06.ibm.com/jp/developerworks/linux/050708/j_l-rubyrails.html
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20060209/228940/
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20060424/236113/

6 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:19:31 ]
テンプレ以上?
長っ

7 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:24:18 ]
1乙
確かにテンプレ長いなw

8 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:28:00 ]
GJ! AA(ry

9 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:39:56 ]
GJ

10 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:54:38 ]
そろそろ初心者スレ含めた2chのまとめwikiが欲しい所



11 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 17:20:55 ]
>>10
なにかまとめることあるの?
初心者スレのまとめWikiは二つぐらい立ってたけど、どっちも動き止まってたような

12 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 17:28:21 ]

 ・ インクリメント演算子が欲しいならMLへ
 ・ 現在のRubyをけっこう改変しないと実装できないのでうまい実装案を持った上で説得すること
 ・ 「よくわかんないけど便利だから」とか禁止


13 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 17:30:10 ]
>>10
1スレでいいから自力でまとめてみ
まとめることが特に無いことに気づくから
やったことないと何かありそうに感じるだけだ

14 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 17:42:55 ]
>>12
だからキチガイって言われるんだよ

15 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 17:59:29 ]
>>14
そりゃあんたはRuby関連の場所が荒れたり揉めたりすりゃ奇声あげて喜ぶだろうけど、たいていの人はそうじゃないんで

16 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 18:16:05 ]
スレ番号++

17 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 19:07:25 ]
いい年して他にやることもなくただ2chで相手を否定することで寿命を削り続けてる惨めなオッサンばっかりだね

18 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 19:54:42 ]
なんでそんな必死なの?

19 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 20:50:08 ]
まあ荒らしもスレのにぎわいって言うし、話題ないよりいいんじゃね。

それより、ちょっと前から職場のSparc Solarisでcontinuationが落ちるように
なってしまった。

hogefuga@darkstar:~/Source/ruby$ ./ruby -I .ext/sparc-solaris2.9
require 'continuation'
puts callcc {|c| c.call :ok}
-:2: [BUG] Segmentation fault
ruby 1.9.0 (2008-10-08 revision 0) [sparc-solaris2.9]

-- control frame ----------
c:0004 p:---- s:0010 b:0010 l:000009 d:000009 CFUNC :callcc
c:0003 p:0022 s:0007 b:0006 l:000924 d:000924 TOP -:2
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH :inherited
c:0001 p:0000 s:0002 b:0002 l:0008c4 d:0008c4 TOP
---------------------------
DBG> : "-:2:in `callcc'"
DBG> : "-:2:in `<main>'"
異常終了

Sparc Solarisってもうサポートされないんだっけか?

20 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 21:23:54 ]
Solaris自体はたぶん動くよね〜という扱いだったかと
SPARCはどうなんだろうか
blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/45345



21 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 00:20:44 ]
>>19
ruby-devかredmine.ruby-lang.orgへGO!

22 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 01:25:44 ]
>>19
うちでは動いた。報告するなら環境を詳しく書いた方がいい。

$ ./ruby -v -rcontinuation -e 'puts callcc {|c| c.call :ok }'
ruby 1.9.0 (2008-10-11 revision 19759) [sparc-solaris2.9]
ok

23 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 06:50:54 ]
言語内 DSL とかで、

class Hoge
def hoge; "hoge" end;
end

def foo(&block)
a = Hoge.new
a.instance_eval(&block)
end

foo { hoge }
# => "hoge"

みたいなのは良くあるけど、このやり方だと例えば Shell#transact みたいな、
instance_eval を使う method のブロック内では

foo { Shell.new.transact { hoge } }
# => NameError: undefined local variable or method `hoge' for #<Shell:0x7fea4b5e00c8>

となって期待通りに動いてくれない。こういう場合ってどう対処したら良いんでしょうか?


24 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 09:47:19 ]
>>23
コードを見ても動きそうな要素が皆無なので
一体どう動けば期待通りなのか全く想像がつきません。
何が引数で何が返り値なのか、とかを考えてからコードを書き直して
初心者スレで質問し直すのがよろしいかと思います。
pc11.2ch.net/test/read.cgi/tech/1221467121/

25 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 09:55:44 ]
質問。ほんのちょっとだけ違うメソッド定義を大量に定義したい場合。

「ハッシュやらブロックやら正規表現やら多用してメソッド定義をevalで作る処理を直に書く」

「メソッド定義を書き出すスクリプトを別途作ってできた大量の(代わり映えしない)メソッド定義をコピペする」
はどっちが妥当?

どうせRubyスクリプト遅いよね、とか厭世観をもって前者を使うべき?

26 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 10:04:38 ]
%w(one two three four five).each do |str|
eval("def #{str}; puts \"#{str}\"; end")
end

と書くのと、スクリプトで出力させたのを
# generator
=begin
%w(one two three four five).each do |str|
puts "def #{str}; puts \"#{str}\"; end"
end
=end
def one; puts "one"; end
def two; puts "two"; end
def three; puts "three"; end
def four; puts "four"; end
def five; puts "five"; end

とコピペするのとどっちがいいかという話?
前者でいいんじゃないの。Rubyに文字列いじらせるのを躊躇ったら駄目
require の中身は eval だと 3回唱えて素直にわかりやすさ優先で eval 使え

27 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 12:03:18 ]
「ほんのちょっとだけ違うメソッドを大量に定義したい」
って辺りで、設計がマズい気がヒシヒシするぜ。そもそも別メソッドにすべきなのか、それ。

28 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 12:07:59 ]
クックブックでは前者のやり方が書いてあった気がする

29 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 13:23:27 ]
まず大量のメソッドを定義しないといけない設計が変だと思う
分類したり、sendとか上手く使う構造にすべき。

30 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 14:18:50 ]
evalを無闇に使うより、もうちょっと穏やかな方法はないかい?
class C
%w(a b c d e).each { |s| define_method(s) { |x| p s * x }
end
C.new.d 5 # => "ddddd"



31 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 14:43:34 ]
統一メソッドと引数で区別するのは見栄えあるいは動作としてめんどくさいからこそ
単一のメソッドをたくさん定義するんじゃないかと思うんだがどうか

32 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 14:45:07 ]
「たくさん」の量にもよるな…
10個くらいならevalで作りたくなる気はわからんでもない
100個ならたぶん何かが間違ってる

33 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 14:56:03 ]
>>23
>foo { Shell.new.transact { hoge } }
># => NameError: undefined local variable or method `hoge' for #<Shell:0x7fea4b5e00c8>

foo { this = self; Shell.new.transact { this.hoge } }
とかではどうでしょうか。
たぶんお望みのものとは違うと思いますが。

self が変わってしまうとどうしようもないので、こんな方法ぐらいしか分かりません。

34 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 15:53:29 ]
「バカが往く」ってめっちゃ上から目線だよな
他人がdisられてる時は対岸の火事というか、笑って読んでられるが、
いざ自分に矛先が向くと超ムカツクわ、あれ。


35 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 18:39:23 ]
>>34も上から目線な件について

36 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 18:43:12 ]
>>23
> となって期待通りに動いてくれない。

そんなもの期待するのが間違い。
env.instance_eval { ... } として用意したメソッドを中の環境で使わせるのは
DSLの文法を構成する機能を与えるため。
その中でどこでも使える便利関数を与えるためじゃない。

>>23は自分の実現したいものをDSLと考えない方がいいんじゃないか。

37 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 18:58:03 ]
だから隠れたところでinstance_evalを使うなとあれほど何度も

38 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 19:18:55 ]
まあまあ、そうえばるな。

39 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 20:14:57 ]
>>38
ズコー

40 名前:33 mailto:sage [2008/10/13(月) 02:56:00 ]
>>36
なるほど。すっきりした。ありがと。
僕が欲しいのはマクロだったんだな。



41 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 05:37:56 ]
Ruby 1.9
> ARGF.class
=> ARGF.class
なんぞこれ・・・

けし忘れ?
complex.c:475: warning: ‘m_sqrt’ defined but not used

Ubutu 8.10βのgcc 4.3.1からだと、
io.c:5574: warning: ignoring return value of ‘fwrite’, declared with attribute warn_unused_result
などのwarningが頻発。あと、parce.cのコンパイルが死ぬほど遅い。

42 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 09:57:41 ]
>>41
> なんぞこれ・・・
気にすんな。
定数にもしたくないし、無名クラスのままってのも嫌だったってだけだから。

> Ubutu 8.10βのgcc 4.3.1からだと、
> io.c:5574: warning: ignoring return value of ‘fwrite’, declared with attribute warn_unused_result
> などのwarningが頻発。あと、parce.cのコンパイルが死ぬほど遅い。

4.3.2だとどちらもない。


43 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 13:56:21 ]
これってMatzが書いたんかいな?

The Ruby Programming Language: David Flanagan, Yukihiro Matsumoto: Books
www.amazon.com/dp/0596516177/

44 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 14:22:19 ]
もちろん。邦訳の計画も一応あるらしい
しっかしレビュー高評価だなあ。やっぱりバイブル扱いされるんだろうか

45 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 14:38:58 ]
巻末に /:|) と書き足すことで先生の仕事はおしまいです。

46 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 14:41:17 ]
目次 ttp://oreilly.com/catalog/9780596516178/toc.html

プログラミングRubyとThe Ruby Wayを買ってしまっている自分にはいらなそうだ…

47 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 15:49:15 ]
ていうか基本的にRuby本体に関する情報そのものは既に出揃ってるだろ
目新しいこと書かない限り重複は免れない

48 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 20:57:54 ]
初期のruby本はrubyを無視していきなり
オブジェクト指向の話になるのが面白かったんだが。
そういうのは期待できないかな。

49 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 21:11:39 ]
フラナガン本はwhileをイテレータで実装とか変態的なことも載ってるよ。

50 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 11:03:08 ]
Visual Studioを使ってRails開発「Ruby In Steel Personal Edition 2008」
www.moongift.jp/2008/10/ruby_in_steel_personal_edition_2008/



51 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 11:19:05 ]
ホスト名見て積極的に読む気なくした

誰か別の人がレビューしてくれるまで待つ

52 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 16:38:21 ]
moongift嫌いなのか

53 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 16:49:30 ]
自分が使ってるソフトウェアが紹介されれば、あんまりアテにしてない人がいる理由が実感できるかも

週に曜日を決めて2回とか、そういう「量より質」の比較レビューにあのパワーを注ぐことを望みたいところだ
「そんなんreadme見てソフト名でググればわかるよ!」と言いたいことが何度か

54 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 16:55:19 ]
Open Alexandriaは好きだった俺

55 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 17:15:47 ]
質より量を望む人間にとっては、MOONGIFTのスピードと簡潔さはありがたい
知らなかったソフトウェアをいろいろ発見できるから

56 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 17:19:39 ]
知ってる情報が役に立たなかったから知らない情報も読みたくない。
不思議な人もいるもんだ。

57 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 17:29:39 ]
>>56
お前頭悪いって言われるだろ…

58 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 17:46:20 ]
>>56
気にするな
柔軟性の足りない人、もしくは記事見る時間が惜しいくらい忙しい人なんだよきっと

59 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 08:39:40 ]
外人さんが「1.9 compatibility デキタ!」 とかうるさい
うんうん Syntax Error 起こしてた場所は消えてるね
でも 1.9 互換を謳うなら $KCODE 依存のコピペコードは直そうね
128バイトで世界を表現できる住人はこれだから困る

60 名前:デフォルトの名無しさん [2008/10/15(水) 13:03:41 ]
>>59
おまえだって、右から左に書く言語のことなんか考慮したことないだろ



61 名前:デフォルトの名無しさん [2008/10/15(水) 16:55:33 ]
テキストファイルから例えば"a"という文字を検索して、マッチすれば
その前後に指定の文字列を挿入する方法はありますでしょうか。

62 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 17:04:06 ]
>>61
初心者スレでつい最近そういう話題が出てた

63 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 17:06:46 ]
#!ruby -pni.bak
BEGIN{
Prefix = "pre"
Suffix = "suf"
}
gsub(/a/, "#{Prefix}\\&#{Suffix}")


64 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 09:44:12 ]
attr_reader :hoge?

と実質的に書けない件をこっちに振ってみるテスト

65 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 10:52:10 ]
Module#bool_attr_reader を自分で定義して使えばよし

66 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 12:16:27 ]
ぎゃー
このライブラリの次のバージョンから、動作もメソッドもめっちゃ変わるじゃん
gem update でアップデートした人でテクニカルな使い方してた人は警告山盛りで涙目

まあ、公開ライブラリ作る人は最初から素直な実装をしようね
(ライブラリが大きくなるとRubyでやれるオレカッコイイ独自実装は癌になる)
というお話でした
今のメンテナが引き受ける前の作者が作った部分だな、これ…

67 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 13:51:18 ]
話の趣旨には大いに賛成だけど、
ここは自業自得っぽくね? >テクニカルな使い方してた

68 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 16:47:17 ]
>>66
どのライブラリ?


69 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 16:59:55 ]
外部ライブラリのメソッドをバグ回避目的以外で上書きするとか賭けだよね

70 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 17:06:03 ]
バグ回避目的であってもモンキーパッチは賭けだよ。



71 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 19:53:10 ]
式1 ? 式2 : 式3
式1の結果によって式2または式3を返します。

if 式1 then 式2 else 式3 end
とまったく同じです。

ってあるけどさ、これどういう事?

defined? String ? "OK" : "NG"
=> "expression"

if defined? String then "OK" else "NG" end
=> "OK"

以下で確認。
ruby 1.8.2 (2005-04-11) [i386-linux]
ruby 1.8.7 (2008-08-11 patchlevel 72) [i386-cygwin]

72 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 20:02:33 ]
>>71
優先順位の問題。

defined?(String ? "OK" : "NG")
(defined? String) ? "OK" : "NG"

73 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 20:03:26 ]
>>71
演算子には優先順位というものがあるでな、式と書いてあったらとりあえず括弧でくくってみることじゃ。

74 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 20:10:08 ]
>>72-73
なるほど、式の優先順位か!
おかげですっきりしたよ、ありがとう!

75 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 07:50:19 ]
>>70
動作変更のメソッド上書きスクリプトを公開するより、バグ報告送ったほうが結局は手間がないことに最近やっと気づいた
バージョン1.1用からバージョン1.5用まで5種類くらい公開して、さすがにキレて1.6で修正入れてもらったとかそんな感じ

76 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 16:35:28 ]
Matzの会社を財務分析してみたんだが。
d.hatena.ne.jp/AntiSeptic/20080704/p1

などと思わせぶりな言い方をするものだから覗いてみりゃ、
なんて事無い田舎の零細企業の財務諸表であって、面白くもなーんともなかったわけだ。

それにしても、この程度の収益で2007年度って、
あの会社にとっては多分空前絶後の景気のいい年だったはずだの
Rubyとゆー「鉱脈」があるだの言っているのは何なのだ。
Geekのヨタ話というのは、いつもこんなしょぼいスケールで行われているのか?
あそこの技術者の平均レベルは、他の普通の会社よりはずっと高いと思うって、
これじゃあ、技術なんてIT企業の収益とは何の関係も無いと証明しているようなもんじゃねえか。

そもそも、この会社が何をやっているのかがHPを見た限りではよく分からん。
要は受託開発だろ労働力を人月で売ってるだけだろマーケ屋がこねくりあげた横文字得意げに使ってなに悦に入ってやがんだコラ。
更には製品・サービス部門まであって、なにやら参考価格が書いてあるところを見ると、
多分にパッケージっぽい印象を受けるが、それでいて全体の粗利率が26%程度ではどうしようもないだろ。

あそこに入りたい人は、損益計算書も注意して見ておくといい。まぁこれはどんな会社でも同じだけど、
ここを見るといろんなことが見えて来る。株価指標を計算してみるのもいい(非公開会社でもね)。



77 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 16:37:02 ]
それもう散々げっぷが出るほど既出

78 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 17:51:52 ]
懐かしいコピペだね

79 名前:デフォルトの名無しさん [2008/10/22(水) 20:17:00 ]
定数探索の規則が謎なんだけど、これどういうこと?

module Foo
module Bar; end
end

module Foo
module Baz
p Bar # => Foo::Bar
end
end

module Foo::Baz
p Bar # => uninitialized constant Foo::Baz::Bar (NameError)
end

80 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 20:25:43 ]
module式の1つ外側に探しに行ってるように見える



81 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 20:53:42 ]
Foo::Baz のほうはネストの外側に Foo がないので探索にひっかからないのよ。

module Foo
module Bar; end
end

module Foo
module Baz
p Module.nesting # => [Foo::Baz, Foo]
end
end

module Foo::Baz
p Module.nesting # => [Foo::Baz]
end

82 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 20:59:15 ]
それはModuleだからで、仕様?

83 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 02:05:01 ]
classでも同じで、仕様。

84 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 09:49:27 ]
日本語spam filterでrubyで書かれたものがあるそうなのですが
読みやすいコードになっているものなのでしょうか

85 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 09:51:51 ]
あのへんはジャンル的に小難しいから、言語レベルはあまり影響しないんじゃないかな
理論を知ってるかどうかに依存すると思う

86 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 18:26:11 ]
RubyでUnicodeの正規化(NFKDだとか)するにはどうすればいい?
ちょっとぐぐってみたけどこのライブラリのこの関数でできるよ!みたいのが
わからなかった。
1.9はきっと標準でできるのだろうけど、1.8でどうすればいいか知ってたら教えて。

87 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 20:15:48 ]
$KCODE = 'u'
require 'active_support/multibyte'

ActiveSupport::Multibyte::Handlers::UTF8Handler.normalize("Python")

88 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 02:46:57 ]
>>87
それは具体的には何をやってくれるわけ? normalizeというだけじゃ特定できんよ。

89 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 05:09:09 ]
「UTF8に正規化」って言ったら特定できるだろ
あとはドキュメント
api.rubyonrails.org/classes/ActiveSupport/Multibyte/Handlers/UTF8Handler.html#M000606

90 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 10:06:38 ]
>>89
Unicodeの正規化は一種類じゃない
Unicode Normalization Forms
www.unicode.org/unicode/reports/tr15/



91 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 10:09:16 ]
ドキュメントを読まないバカは死ねばいいのに

92 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 15:48:38 ]
>89
> 「UTF8に正規化」って言ったら特定できるだろ
何に特定できるって?


93 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 19:19:45 ]
英語読めない人と英語読めるのにドキュメント読まない人がいるんでしょうか?

94 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 19:50:36 ]
うっかり「特定できる」なんつってしまって引っ込みがつかないバカがいるだけ。
しかもわざわざ余計なこと書いて自分で傷口広げてる。


95 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 00:44:24 ]
>>94
ドキュメント読めば特定できるけど,そういう意味じゃないんか?
Returns the KC normalization of the string by default.

まあ自分は88でも89でもないしどうでもいいんだけど
ただただ正規化メソッドが用意されてることに驚いた

96 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 01:03:01 ]
オプションで正規化方法を指定できるんだな。


97 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 01:20:54 ]
ファイル処理について質問です。

open(filename){|f|
puts f.readlines[1, 10]
puts f.readlines[20, 30]
}

とすると、readlines[20, 30]がnilになります。

原因は、readlinesメソッド終了時にブロック f が閉じられるからのようなんですが、
readlineメソッド呼出し後にブロックに戻ってくる方法はあるのでしょうか?


98 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 01:29:07 ]
>>97
>IO が既に EOF に達していれば空配列 [] を返します。

というか、再利用しようよ。

open(filename){|f|
 a = f.readlines
 puts a[1, 10]
 puts a[20, 30]
}


99 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 01:30:07 ]
IOは読み込み位置を覚えていて、次はその続きから読もうとする。
readlinesは最後まで読んでしまうから、覚えてる位置は「最後」だ。
最初から読み直したいのなら、f.rewindを呼んで巻き戻す。


100 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 01:36:17 ]
>>98-99
解決しました。助かりました^^








[ 続きを読む ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<99KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef