1read 100read
2012年5月プログラム70: Rubyについて Part47 (400) TOP カテ一覧 スレ一覧 2ch元 削除依頼
【GPGPU】くだすれCUDAスレ part5【NVIDIA】 (750)
懐かしのMS-DOSプログラミング (349)
【C,C++】 ちょっと問題解いて行け 【勉強】 (456)
VB超度級初心者がSQLを使いこなすまで(−−) (235)
英語は、訳さずに読もう with 英英辞典 (235)
日本発、次世代言語: 織田信長 (528)

Rubyについて Part47


1 :12/01/16 〜 最終レス :12/05/29
プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
前スレ
Ruby 初心者スレッド Part 46
http://hibari.2ch.net/test/read.cgi/tech/1317790320/
るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/
Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/
逆引きRuby
http://www.namaraii.com/rubytips/

2 :
あ、間違えた
落としてください

3 :

ステルスマーケティングまとめ
A http://www.dotup.org/uploda/www.dotup.org2522270.png
B http://www.dotup.org/uploda/www.dotup.org2522750.png
 →  ステマの黒幕は ソニー(アニプレックス)、角川
関連キーワード はちま 清水鉄平(はちまの本名) KND 元ソニー会長出井伸之
        はちま管理人によるみかじめ料を払わない特定メーカーへの叩き
        まとめサイトは企業が運営 コメント欄も社員の煽り(が殆ど)
おまけ
2ch監視が仕事のスクウェア社員w↓
96 名前:番組の途中ですがアフィサイトへの転載は禁止です[sage] 投稿日:2012/01/16(月) 12:41:25.60 ID:X9dFbc830
proxy1.square-enix.co.jp - 2012/01/16 12:38:51 - Japan - Commercial(企業)
IP :61.195.58.8 (不明)
Referer :http://ipatukouta.altervista.org/php5/
USER-AGENT :Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)


【株式会社KND・清水鉄平】はちま起稿が特定され黒い関係が明らかに★78【黒幕を特定せよ】
http://awabi.2ch.net/test/read.cgi/poverty/1326691256/

4 :
クックパッドってRubyで開発されてるんですよね
やっぱり企業でRubyが採用されてきているということでしょうか?
今から覚えておけば仕事につながりますか?

5 :
Rubyを使っているところもあるけど
ほとんどないよ
なにかメインの言語を使えた上でRubyならありじゃない?
ってか何かひとつの言語に精通していればたいていのひとは
他言語もすぐつかえるようになるがw

6 :
一応PHPはできると思ってますが求人を見るとRubyとかJavaとか見るのでPHPの仕事ないのかと思ってました

7 :
特定の言語が出来ます!だけを就職活動の売りにするのは危険な気がするが。

8 :
PHPしか使えませんというのは一山いくらのPGコースになるので、
例えばJava Ruby PHPはある程度使えますというくらいになった方がいい。

9 :
何を作りました、のほうがいいよ

10 :
あるモジュールが名前空間を汚染するので
module Hoge
require 'hoge'
end
とかでモジュールの下に入れいたいのだけど
↑ではダメでどうしたらいいの

11 :
名前空間を汚染するモジュールってのは
module とか class で囲まれていない関数定義とかが存在してるってこと?
ファイル内容を全部文字列で読み込んでクラス定義/モジュール定義文中で eval するとかの
ちょっと強引な方法しか思いつかなかった。

12 :
もし学生なのなら
サーバーを自前で立てて何かしらのWebアプリを1から作ってみたら?
それを面接でURL教えて見てもらえば
自分の実力をアピールできるんじゃないかな
JAVAが使えます!
とか言われても面接官には実力なんてサッパリわからんよ
プログラムを覚えるのにしても
具体的に何か作ったほうが身になるよ

13 :
>プログラムを覚えるのにしても
>具体的に何か作ったほうが身になるよ
これはあるよな。
あとちゃんと最後まで完成させる癖つけといた方がいいとは思う。

14 :
逆引きが文字化けしてる

15 :
rubyの逆引きサイトを作ったらここの先生方からアドバイスやご指摘はいただけるものですか?
何で作ろうかと思ったのは己のコードを見せることが成長につながると思っているからです

16 :
cgi formで送られてきたキーの中身が空の場合に
以下のようにして、空かどうか見てるのだが、もっとスマートな方法はないの?
cgi['hoge'].length == 0
または
cgi['hoge'] == ''
ちなみに、キー自体があるかどうかのこれ↓ではないです。
cgi.has_key?('hoge')

17 :
>>16
String#empty?

18 :
>>17.thank_you

19 :
そりゃ、そうだよね。
スマートな方法あるよね。

20 :
Riding Rails: Rails 3.2.0: Faster dev mode & routing, explain queries, tagged logger, store
http://weblog.rubyonrails.org/2012/1/20/rails-3-2-0-faster-dev-mode-routing-explain-queries-tagged-logger-store
https://twitter.com/#!/dhh/status/160412306537328640

21 :
【プログラミング部】 PHPが100倍速で動くようになったぞー
http://awabi.2ch.net/test/read.cgi/poverty/1327050821/

22 :
/\w/がひらがなにマッチするコードとしないときがあるんだけどこの条件なんでしょうか?
1.8のときは、KCODE設定しているかどうかだった思うんですけど

23 :
すいません質問スレで質問したいんですけどどなたかスレ立てていただけませんか?

24 :
ぶっちゃけ回答者9割くらい被ってるので、ここを見つけたならここで質問とかしてもらって一向に構いません

25 :
EmacsでRubyモードの場合に、先頭に「# -*- coding: utf-8 -*-」というのが
勝手につくんですけど、これをやめさせるにはどうしたらいいですか。
#つけたほうがいいのはわかったうえで、個人的事情によりつけたくない。

26 :
emacs スレで聞く内容だろ。

27 :
Emacs の ruby-mode は利用者も多いと思われる話なので、ここでも構わないけど、回答が来なくても泣かない
で、ruby-mode-set-encoding で検索するといいかもしれないのだが、お手持ちの ruby-mode.el のバージョンで動作するとは限らない
いろいろ抹殺パターンはある模様

28 :
IDEを使えばそんな問題おきないのにね!

29 :
>>27
>ruby-mode-set-encoding
これでぐぐってうまくいきました!ありがとうございます。
テキスト文章のなかにRubyのコードをかくときに、一時的にRubyモードに
したかったのですが、そうすると頭に勝手にマジックコメントがつくので
こまってたんです。助かりました。

30 :
>>5
railsがなくなったらrubyは辞めます。
本当の意味で意味ないし。

31 :
      ,―ヽ_(((((_、―
   ,/  ノ       ヽ  ~\
  /   ノ   IPA    ヽ   ~\
/   ノ           ヽ、  `ヽ
|    ノ / ̄\   / ̄~ヽ ヽ    i
|   ノ              |  ノ
\  |  <●>  <●>  (  )
 \ |      | |       i /
    |      /  ヽ       レ
   i     (●_●)      /  
    i、    ,-――-、   ・ /
    i、  <(EEEEE)> ∵/    IPA Rubyスレにようこそ
      i、  \   ./  /
       \   ーー   ,ノ       
  ,,.....イ.ヽヽ、ー-―一ノ゙-、.
  :   |  '; \_____ ノ.| ヽ i
      |  \/゙(__)\,|  i |

32 :
>>30
railsのほうが意味なくね?って思う
最近思ったんだけど
スクリプト言語ってさ
今までC++やJAで苦労して作っていたものが
スクリプト言語ではライブラリが備わってて
楽に作れるようになるのが、素晴らしいだけで
スクリプト言語から入った奴って、何を作ったらいいかわからなくなりそうだよな
検索すれば「え?こんなものまであるの?」ってくらいにはライブラリは出てくるけど、
そのライブラリの名前を知る機会っていうのは、
他言語でプログラミングしていないとないような気がする
でもそれはどの言語からはいってきても同じなのだろうか?
でもやはりネイティブ言語で少しは苦労してきた(効率の悪いコードや再発明をしまくってきた)奴でないと、
このありがたみはわかり辛いのかもしれない

33 :
別にスクリプト言語に限らず近代的な言語はライブラリはかなり充実してると思うぞ?
Java なんか全然苦労してないと思うけど。
単純に開発者の層がわかれていくだけの話だと思うよ。
ドメイン毎に特化した業務知識が必要な部分と、それを実現するための高度な情報科学を必要とする低層の部分とで。

34 :
rubyで、ファイルの内容を$stdoutに出力する時に
$stdout.write File.open(file, 'rb') {|f| f.read }
としているのですが、ファイルの内容をそのまま出力するだけのときは、
ファイルの内容をRuby側に読み込むのはメモリの無駄だと思います。
$stdout.send_file(file)
みたいなかんじて、ファイルの内容をダイレクトに$stdoutに出力する方法はありますか。

35 :
File.open('large.txt') do |f|
f.each_char{|c| $stdout.print c}
end
原理的にはバッファしないと出力できんが、要はメモリに1文字ずつとか1行ずつとか読み込めばいいんだろ

36 :
IO.copy_stream はバッファリングを無視したら要望を満たすかな?

37 :
ソースに$stdout.send_file(file)と書きたいだけなのか、
実際に動作としてファイルの内容をダイレクトに$stdoutに出力したいのか、
どっちだろ?
前者だったらお好きにどうぞだけど、後者だったら少なくともPOSIXな環境にはそんなシステムコールは
無いような気がする

38 :
require 'hogehoge' したとして、じっさいにどのファイルが読み込まれたのかを調べる方法はありますか。
which 'hogehoge' #=> /usr/local/lib/ruby/1.8/lib/hogehoge.rb
みたいなの。

39 :
>>37
だから思考に至る経緯も書いてあんだろ
>>38
なかったはず

40 :
1.9から$LOADED_FEATURESの中身が絶対パスになってるけど、
配列だからrequire時の引数との関係は完全には分からないな。
(拡張子まで明示してrequireされたかどうか、とか)

41 :
>>36
おーそんなのがあるんですね。ありがとうございます。
でも1.8では使えないみたい、ショボーンです。
>>37
>少なくともPOSIXな環境にはそんなシステムコールは
>無いような気がする
POSIXにはなくてもLinuxとFreeBSDにはありますよー
ttp://linuxjm.sourceforge.jp/html/LDP_man-pages/man2/sendfile.2.html
ttp://www.unix.com/man-page/freebsd/2/sendfile/
IO.copy_streamは内部でsendfile(2)を呼び出してくれてるのだろうか。そうだとうれしいなあ。

42 :
IO.copy_streamの実体rb_io_s_copy_stream関数から
copy_stream_body
nogvl_copy_stream_func
以下、USE_SENDFILEが定義されているとき
nogvl_copy_stream_sendfile
simple_sendfile
sendfile
という呼び出しの流れ。
USE_SENDFILEは、linuxでは定義されてるけど、BSD系は
/* This runs on FreeBSD8.1 r30210, but sendfiles blocks its execution
* without cpuset -l 0.
*/
というコメントがあって#ifdef outされてる。
以上 io.c より。

43 :
まあ環境依存だし
システムに特化したもので最適化したいならRubyなんて使わずにCで書いたほうがいいよ

44 :
うむ、たとえ1バイトでもバッファリングしたら死んじゃうという人はぜひCで

45 :
顔を紅潮させながら崇史はそう叫んだ

46 :
>>42
何を言わんとしているのか分かりにくいけど、
・IO.copy_streamは、Linuxではsendfile()を呼び出している
・残念ながらBSDではなんかの事情によりsendfile()は使われてない
ということ?
もっと分かりやすい説明して。

47 :
>>46
> BSDではなんかの事情により
cpuset -l 0 しないと sendfiles がブロックするって書いてあるだろ

48 :
ruby(1.9.1)+soapについて質問です。
rubyのsoapクライアントとして、soap4r-ruby1.9-2.0.3を使っています。
soapのサービス側としてはAxis2を使ってJavaにて実装しています。
soapサービス側にて、get()関数の返り値として、Javaで定義したクラスを返そうとしています。
サービス側の実装イメージは以下です。
public class SoapService{
public SoapServiceResult getResult(){
return new SoapServiceResult();
}
}
public class SoapServiceResult{
public String str1 = "str1";
}
このように、Javaのクラスを返り値とするSOAPサービスに対してRubyでクライアントを書くことは不可能なのでしょうか?

49 :
>>48
うん、不可能。
任意のRubyオブジェクトをMarshalモジュールでダンプして文字列として返すコードは、
SOAP4Rでも実装できる。でも、そんな(Ruby依存な)SOAPレスポンスを処理できる
クライアントをAxis(Java)で書くことは(一般的には)不可能。それと同じ事。
Axis文書の読書ガイドで紹介されている "The Wondrous Curse of Interoperability"
(相互運用性の驚くべき呪い) という文書を読むことをオヌヌメする。
文書の題名をググればPDF形式で読めるから、そこに解決方法が書かれている。
もし分からなければ、Java関連スレ(Axisスレ?)で以下ように質問しなさい
「Axis2でプログラミング言語に依存しないサービスを設計するための指針はありますか?」
これ以上はスレ違いだ。

50 :
このスレは間違いなので放置推奨

51 :
>>50
Ruby初心者スレッドはどこに行ったんだ?

52 :
Ruby 初心者スレッド Part 48
http://toro.2ch.net/test/read.cgi/tech/1328648447/

53 :
「現在Rubyは、Webサイトでの利用が中心となっているが、
ここから領域を広げるためには、HPC(high performance computing)と組み込み機器への対応が必要」
「情報家電やロボット、ゲーム機などあらゆるものにRubyを搭載したい」〜まつもとゆきひろ氏 -クラウド Watch
http://cloud.watch.impress.co.jp/docs/event/20110906_475426.html
2011/9/6 06:00

54 :
Riteはどうなってるんだろ
Luaと勝負できるようなのが出来たらいいんだけど

55 :
>>53
Twitterに何も書かれてない記事初めて見たwww

56 :
Riteって性能ではLuaには及ばないのでは?
LuaJITには到底かなわなさそう
モジュラー構造で機能の取捨選択が出来て
メモリフットプリントを小さくすることにより
組み込み機器に乗せることが可能にし
「組み込み機器もRubyで制御できればいいね」
を実現するのが主目的なんじゃないの

57 :
まつもとゆきひろ「public static void mainなど、コンピュータに伝える約束事が多くて、
やりたいことが頭の中から逃げてしまう。簡潔さは力なのです(中略)
“実行可能疑似言語”と呼ばれる何言語でもないコードが示されることが多い。
それはPascalもどきとか、Algolもどきで書いてある。
もどきといっても、アルゴリズムをちゃんと記述できている。
だったら、それを理解できる言語を作ればいいじゃん、ということで、ある意味、それがRubyの目標です」
「ソフトウェアは工業製品ではない」、Rubyのまつもと氏が講演 − @IT
http://www.atmarkit.co.jp/news/200904/10/matz.html
2009/04/10
メタ言語のことで、一般にBNFやBN記法と略される
バッカス・ナウア記法 − Wikipedia

58 :
matz大激怒!こんな糞コミッタ−しか育たないんならRuby開発なんて意味ないね
http://ikura.2ch.net/test/read.cgi/bread/1325584365/

59 :
パンじゃつれねーだろ

60 :
やっぱミミズか?

61 :
何かに認定されたってね。おめでとう。

62 :
mrubyについての話題無し?
初代にくらべ笹田さんの実装がいくらか効率的なんだろうけど、
なんかやっぱMatzに実装してもらいたい気がしてたからいいニュースだった。
Matzも血が騒いだのかもしれん。

63 :
初心者スレで、これからはmrubyのほうを学べきでしょうか、という
いかにも初心者な質問が出てたくらい。
動かしてみたい人は勝手に拾ってきてコンパイルしてるだろうし、
webやら日々のスクリプティングにはあんまり関係ないしな。

64 :
エディタのマクロ言語なんかもmrubyの担当領域になるのかね。

65 :
>>64
特にPC上で使う利点あるっけ?

66 :
いや、アプリに組み込むインタプリタって意味で。

67 :
冷蔵庫に付いてる伝言機能用エディタに組込むならいいと思う

68 :
と思ったが、20MHz の ROM 128K じゃ無理か
ttp://www.semicon.panasonic.co.jp/micom/apply/0402.html
最近のテレビくらいになると Linux カーネル載せてたりするみたいだし十分動くんじゃね

69 :
>>64
エディタぐらいであれば、
フルスペックのRubyを組み込んでもいいんじゃないのかなあ

70 :
emacsにおけるelispの位置をえるためには、
rmacsが必要だなw

71 :
1.9.2p290はファイルを読むとき CR,LF,CR+LF を改行扱いしてたけど
1.9.3p194だと CR が改行扱いされないのはなんか方針が変わった?
Windows7でRubyInstaller使用

72 :
Rubyって今からやるならver何使えばいいん?

73 :
mruby

74 :
1.9.3の最新使っとけ
mrubyはそれが何なのか自分で理解できる奴以外には不要。

75 :
2013年までは1.8.7を使うのが吉だな。互換性問題に悩まなくて済む。

76 :
>>72
rvmで1.9.3
>>75
2013年でそれまでに作ったものがゴミになるかもしれないだろ

77 :
勉強してる間に即腐敗する1.9系よりまし。

78 :
どっちも覚えろよ
Rubyにかぎらずこの業界一生そんなもんだ

79 :
馬鹿には無理

80 :
バージョンごとに互換性がないのはRubyとPHPくらいなものです

81 :
>>80
それは、あなたが3つしか
言語を知らないということですか?

82 :
受注ベースで仕事してるなら非互換はむしろ仕事のチャンス

83 :
>>81
他にあるならあげて見てくれないか?
もちろん仕事で使える言語で

84 :
>>83
Python 3が後方互換性を捨てても求めたもの − @IT
http://www.atmarkit.co.jp/fcoding/articles/python3/01/python301a.html

85 :
パイソンはまだ前科一般だからRubyやPHPと一緒にするのはかわいそう

86 :
前科一般とか関係ない。
事実は事実。

87 :
漏れはまだPython3使ってないから関係ないや

88 :
だから3つしか知らないんだろうなと言った。

89 :
RubyとPHPとPythonは後方互換性がない
他は安心

90 :
>>89
必死すぎw

91 :
全部スレチだろ。煽るだけなら黙ってろ

92 :
だから一々そんなの気にしないで全部おぼえろっつってんのに

93 :
1.8用のプログラムはもはやゴミだよな…手元で動かすのがだるいだるい。
JRubyとかですらデフォルトが1.9モードになってしまった。

94 :
つうかC言語のソースコードだって大昔にかかれた奴って
今のコンパイラじゃコンパイル通らなくね?
>>78
それだと思う
本来ならば根幹の主軸を誰も動かさず
根幹を丁寧に作り、その上に少しずつでも資産を積み重ねたほうが数億倍いいんだけど
まだ誰も「正確に」根幹を作れていない
だから結局、流れの中で生きていくしかない
技術が廃れる前に覚えるという学習速度こそが最も大事、
さらに先にいけば、新しい有望な言語や技術が出てきたときに入門書や書籍が書いたら即売れるような時期に
調べてすぐにかいてしまったり、上手く採用してしまうレベルの奴が金儲けをしていく

95 :
本質本質って言い続けてるだけの奴っているよな

96 :
> つうかC言語のソースコードだって大昔にかかれた奴って
> 今のコンパイラじゃコンパイル通らなくね?
Rubyはつい最近の話だから問題。

97 :
それなりに互換性には気を使ってるCでも
K&R C→C89→C99の過程でも非互換性は発生してるので……
究極的には、「完璧な」仕様と実装の処理系を出せばいいんだろうけど
それこそ無茶言うなって感じではあるし

98 :
そういう意味ではISO/IEC 30170:2012はまずい流れなんでしょうかね
ANSI以前のCなんて方言だらけだっただろうし、規格が無いならそれも当然だと割りきれる
けど、一度規格作っちゃったら互換性を蔑ろにはできないような…

99 :
枯れた言語が好きなら、common lispにしときなさい。^^;

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
インテルC++コンパイラ9.0発表! (582)
【】configure大嫌い【RMS】 (491)
【sockets】HTML5を使って作る高度なウェブアプリ【3D】 (183)
【3DS】プチコンを語るスレ【DSi】 (606)
NullPointerExceptionを「ぬるぽ」と呼ぶスレ6 (316)
Lisp Scheme Part34 (549)
--log9.info------------------
【岩手一】岩手県立盛岡第一高等学校 PART5【白亜】 (294)
【51期生】愛光学園 Part14【お断り】 (732)
海城>城北>攻玉社>巣鴨>暁星>芝     (589)
【富山】砺波・魚津・富山東・高岡南【NON御三家】 (118)
【熊本No.1】熊本県立熊本高等学校【第二済済黌】 (740)
【そろそろ】水戸一高を語るpart32【春休み】 (202)
【受験関係者専用】神奈川県公立高校part55 (948)
【北陵】宮城県仙台第二高等学校 Part10【広瀬川】 (256)
灘中学校・灘高等学校 Part22 (611)
【理数科】大阪府立天王寺高等学校Part2【普通科】 (739)
★関西学院系属★啓明学院中学校・高等学校★4★ (615)
埼玉県公立高校総合スレPart1 (608)
【目指せ!!】愛知県立江南高校【犬山線盟主】 (115)
浅野中学校・高等学校 Part10 (138)
【実力校】秋田市内御三家+新屋【同盟】 (259)
★★東京学館浦安中学校・高等学校その3★★ (272)
--log55.com------------------
【70年代以前】京都の旧型トラック【限定】
【日産】UCはどうしたら世界一になれるのか【TCM】4
【大型車・特殊車両(仮)】自治スレッド【その1】
☆岩手のデコトラ★
うざい固定o(^_^)o逝ってくれo(^_^)o Part.6
ドキュンといえばトラック運転手?
岡山の旧型建機について語るスレ
【ナンバー】構内専用車【無し】