1 名前:デフォルトの名無しさん mailto:sage [2010/03/22(月) 13:56:36 ] プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。 ★注意★ Ruby 1.9.1 は初心者にはまだ時期早尚です。初心者には Ruby 1.8.7 を強くお勧めします。 (理由:現時点では有名ライブラリやアプリが 1.9.1 に完全には対応していないためです) 1.8.7 でも 1.9 系に導入された新機能のいくつかが利用可能なため、1.8.7 を習得すれば将来スムーズに 1.9 系に移行できるでしょう。 関連スレやURLは>>2-5 あたりを見てください。Ruby on Rails の質問は Webプログラミング板の Rails スレへ。 ■質問する人へ 質問する前に次の3つをすること。ここで回答を待つよりそのほうが早い。 ・モジュール名やエラーメッセージでググる ・マニュアルで引っかかったクラスの記述を探す www.ruby-lang.org/ja/man/ ・FAQを一応読む www.ruby-lang.org/ja/man/?cmd=view;name=Ruby+FAQ 質問には以下を書くこと。へたくそな質問は再提出を要求される。 ・詳しい内容(「動きません」「うまくできません」では回答しようがない) ・エラーメッセージ(自力で訳さずなるべくそのままで) ・実行環境(OS名、Rubyのバージョン(ruby -v でわかる)) ・最終的にやりたいこと(もっとよい方法がある場合が多いので) 回答してくれた人には「ありがとう」のひとことをいってあげて。 ■回答する人へ 相手は初心者、根気よく育てるつもりで。質問がへたくそなのも大目にみてあげる。 それができないならこないこと(だって初心者スレだもん)。 ・既出な質問やFAQは「XXXを読め」でいいので、叩かない&怖がらせない。 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。
29 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 20:54:48 ] >>26 c++ の人ならlambdaはC++にもある(boost)から概念ならそこから理解できるはず
30 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 20:57:47 ] >>27 irb> "str" == "str" true irb> "str".equal?("str") false ということで String#equals? >>28 そう複雑でもない プリミティブなクラスを発明しない限り普通は === も eql? も再定義することはない クラスごとに「おなじとみなしていいもの」の判定を == で定義すればいい
31 名前:27 mailto:sage [2010/03/23(火) 21:38:42 ] >>28 複雑だとは思いませんが、条件式としては微妙だと思います >>28 ,>>30 ありがとうございます
32 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 21:49:02 ] rubyにはconstやfinalのみたいな、再代入を防ぐ方法は無いんですか?
33 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 21:50:29 ] 普段使うのは == と equal? だけだな >>32 Object#freeze
34 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 21:55:08 ] >>32 ない 変数名の再使用を禁止することはできない オブジェクトの内容が変更されることを防ぐことならできる のが>>33
35 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 22:08:38 ] 定数(名前が大文字から始まる変数)がいちおうそれだけど、効力としては警告止まり 警告を無視するようなバカには効果はないが javaと違って基本的にプログラマを疑っていない言語だからそこは割り切ってくれ
36 名前:26 mailto:sage [2010/03/23(火) 22:23:55 ] >>29 ありがとう。Boostは使ったことない
37 名前:32 mailto:sage [2010/03/23(火) 22:25:40 ] >>33-35 ありがとうございます まだrubyプログラミングに慣れていないので、間違えて再代入しないようにしたかったのですが ムリぽですね
38 名前:デフォルトの名無しさん mailto:sage [2010/03/23(火) 22:26:58 ] そもそもそういう動機で再代入を禁止してはいけない
39 名前:デフォルトの名無しさん [2010/03/23(火) 22:30:04 ] Haskellやればいい
40 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 00:00:36 ] グーニーズくるー?
41 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 10:19:10 ] 現在、Threadが実行中か調べる方法を教えてください
42 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 10:25:25 ] Thread#status
43 名前:デフォルトの名無しさん [2010/03/24(水) 10:25:51 ] t.status #=> "run" or "sleep" or "aborting" or false or nil t.alive? #=> true or false
44 名前:41 mailto:sage [2010/03/24(水) 10:52:29 ] >>42-43 ありがとうございます Rubyのスレッドって寿命があるんですかね Thread.start { for i in 1..10000 puts i end } 最後まで表示されないので
45 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 10:56:51 ] …あれ、なんだこれ
46 名前:41 mailto:sage [2010/03/24(水) 10:58:41 ] メインのスレッドが終わっているから、全部表示されないのかも
47 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 11:03:47 ] t = Thread.start { for i in 1..10000 puts i end } t.join
48 名前:41 mailto:sage [2010/03/24(水) 11:12:33 ] >>47 そこまで、すぐにわかりました IOに時間がかかるので、GUIを描写を止めないようにしたいんです def〜endの間でしかスレッドを使えないんですかね? デーモンみたいな感じで使えたらいいんですが def hoge t = Thread.start{} end
49 名前:41 mailto:sage [2010/03/24(水) 12:43:59 ] def buttonPush ←ボタンがクリックされた時に呼び出される t = Thread.start{ 適当な処理(時間がかかる) storeBinary() } end def storeBinary 大きいデータを書き込む end buttonPushが呼び出された時に、GUIを止めたく無いんです
50 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 13:09:52 ] よくわからんけど、バックグラウンド処理用のスレッドを管理する仕組みを作って GUIのスレッド(ここではbuttonPush)から呼び出すとかじゃダメなのかな。
51 名前:デフォルトの名無しさん [2010/03/24(水) 13:13:05 ] 全体の最後に Thread.list.each {|t| t.join} を置いておけばいいのかな。 メソッドを抜けたときに参照がなくなってGC対象になってしまう?
52 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 14:35:57 ] 環境(OS, Ruby, GUI, IOの種類)を書いた方がいいんじゃないかな >>51 生きていればThread.listが参照してる
53 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 14:37:14 ] 参照してるっていうのは正確じゃなさげ でもThreadクラスオブジェクトが知ってるということはどこかしらで参照してるんだろう
54 名前:41 mailto:sage [2010/03/24(水) 15:14:58 ] >>51 わからないよ >>52 OS:Gentoo Linux 2.6.32-r7 Ruby:1.8.7 (2010-01-10 patchlevel 249) [x86_64-linux] GUI: KDE-Smoke 4.4.1(QtRuby) IO:ネットワークからデータを取ってきて保存する
55 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 18:06:29 ] >>54 >>50 と同じようなことだと思うけど、ワーカースレッド作って buttonPush で ワーカースレッドにキューを投げるようにすればいいんじゃないの? 雰囲気は、こんな感じ。(動くかどうかは未確認) def initialize @queue = Queue.new Thread.start do while q = @queue.pop storeBinary end end end def buttonPush @queue.push(:store) end
56 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 18:34:13 ] メッソドAがやっている事に、プラスαの操作をつけたい def MethodA 処理A 処理B end def methodB 処理A yield 処理B end yield以外はまったく同じ操作なんですが、やっぱり2つメソッドを作るしかないんですか?
57 名前:デフォルトの名無しさん [2010/03/24(水) 18:55:12 ] yield if block_given?
58 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 19:04:15 ] >>57 thx
59 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 21:33:34 ] >>54 スレッドが回っていないんじゃない?多分。 GUI起動したmainスレッド側で実行権つかみっぱなしな悪寒 GUI起動直前に、タイマーかなんかで定期的に Thread.passでスレッド回すコード追加してみたら いけるかもね
60 名前:54 mailto:sage [2010/03/24(水) 22:05:26 ] >>59 GUIでボタンをクリック→スレッドのスタート→Net::HTTPのライブラリーが呼び出される という順番でプログラムを書いているのですが Net::HTTP#get()が呼びだされた瞬間に、勝手にスレッドが終了してしまうようです(rubyのバグ?) シングルスレッドでテストしてみると、何にも問題がありません ひとまず、違う処理系でも実行してみたいと思います
61 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 22:09:56 ] なんらかの例外が起きてるんじゃないか? ruby に -d オプション付けてみた?
62 名前:デフォルトの名無しさん [2010/03/24(水) 22:23:40 ] 状況を再現できる短いコードが用意できればベストなのだが。
63 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 22:27:19 ] GUIやるかスレッドやるかどっちかにせえやという気は若干しなくもなく…
64 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 22:29:46 ] >>61 例外でスレッド終了か シングルスレッドだと動いてるみたいだしなさそうだが
65 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 22:31:13 ] >>63 GUI + スレッドは正しい道のりな気が
66 名前:デフォルトの名無しさん mailto:sage [2010/03/24(水) 22:50:43 ] >>59 他の GUIツールキットの事情は知らないけど wxruby はもろにそれだな t = Wx::Timer.new(self, 9999) evt_timer(9999) { Thread.pass } Thread.new { hoge } t.start(100) こんな感じでタイマー使って定期的に Thread.pass してた
67 名前:54 mailto:sage [2010/03/24(水) 23:17:15 ] >>61 ttp://www.darshancomputing.com/qt4-qtruby-tutorial/chapter_01 これくらいでも、例外が発生していました LinuxでもWindowでも例外が発生します >>62 簡単なコードを書きました ボタンを押すと、コンソールに"test"と表示されます ずーっと"test"と表示されていて欲しい所ですが、2〜3回しか"test"と表示されません ttp://loda.jp/textliving/?id=28 windowsの人は「gem install -r qtruby4」でインストールしてください Linuxでは「kde-base/kdebindings-ruby(Gentooの場合)」というパッケージをインストールしました >>60 ここでは、バグかな〜と思ったのですが Active Script Rubyでも、同じ所でスレッドが終了してしまいました どうやら、処理系のバグってのは勘違いっぽそうです
68 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 00:40:13 ] >>67 ASR1.8.7でそのコードを試した感触だと>>66 がビンゴっぽい
69 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 00:42:24 ] jrubyはネイティブなrubyの処理系を必要としますか? NetBeansのRubyだけで、おk?
70 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 00:55:13 ] なにがなんだかさっぱりわからんが、JRuby は Java の実行環境上で動作する インストールに必要なのは Java の実行環境
71 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 00:59:12 ] 説明しよう! Java で動作してる NetBeans には JRuby が最初から同梱されて使える状態になっているのだ! だから cruby を別途インストールしなくても Ruby スクリプトそのものは作れるんだ! すごいね!
72 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 01:11:46 ] Rubyは雑務や仕事の効率化UPのためのちょこっとスクリプトに使う人がよくいるみたいですが シェルスクリプトとはできることが違うのでしょうか? シェルスクリプトにできなくてRubyなら出きることって何かありますか?
73 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 01:15:40 ] シェルスクリプトつかったことないならむりしてわだいにださなくていいよ
74 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 01:29:39 ] shell script だけではできる事は非常に限られている shell の種類にもよるが四則演算すらできないしカウンタも使えない ``を多用すればruby 以上の事はできるが面倒で煩雑 ruby の方が shell script より楽ってこと
75 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 03:17:53 ] InterfaceやAbstractがないことに驚いたんですけど! 動的言語では型付けがいらないからInterfaceを返してキャストとが要らないのは 分かったものの、ダックタイピングというのが分からない とりあえずInterfaceおいてダックであることを明示、保証するのが当たり前だと 思ってたけど、この必要がない理由と動的言語の性格って関連があるの?
76 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 03:40:37 ] 必要な時に必要なだけメソッド定義すれば
77 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 05:22:26 ] 動的言語に何の保証があるというのか
78 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 06:14:26 ] 静的型付け言語なら定義済みのクラスやインターフェースからコンパイル時に 型チェック(引数や型による代入制限、メソッドの有無等)を行えるが 変数が型を持たないrubyではそれらが意味をなさない ダックタイピングは乱暴に言っちゃうと メソッドが無かったり引数があわなければどっちにしろエラーになるんだから それでええやん、て感じ
79 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 08:25:53 ] 実際は別にダックタイピングを駆使してるわけでも意識してるわけでもない どう考えたって逆にめんどくさいからな 「○○するメソッド名ってやっぱ××だよな」程度の使われ方になる クラス作成者とクラス利用者の間における命名規則の紳士協定みたいなもんだ
80 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 10:59:42 ] あれ時間が戻った?
81 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 15:58:55 ] >>75 どっかの面接みたいな問だな
82 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 17:18:31 ] ・Rubyの変数には型がない(代入に制約がない) ・Rubyは動的型付けの言語(=型が実行時に定まる) 型が無いわけではない この辺が混同されやすいのかなあ
83 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 17:29:12 ] 「いわゆる型」がないんだよね 型って言われたら「その型って具体的に何を指してるんですか」とか聞かないと駄目かなあ
84 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 17:38:40 ] クラスと型ってどう違うの? なんとなく同じ様なもののイメージなんだけど
85 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 17:41:20 ] うだうだ言ってないで文法書とサンプル読みあさった方が手っ取り早い。 先にRuby的言葉遊びから入って得られるものは少ない。
86 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 17:43:55 ] オブジェクト指向の知識があるならそれでOKなんだよ 問題はオブジェクト指向と称して実はただの「C++の知識」「Javaの知識」だったりするから
87 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 18:48:07 ] Rubyの場合は話してる最中に 「いやこれはたぶんRuby依存の特有の話だな…」 とか気づけるからまだマシなような気もする Javaの実装がオブジェクト指向だと思い込んでる人は結構困る
88 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 18:52:33 ] 聞き手そっちのけのオナニー喩話はどうでもいいよ。 ちっとも理解が促進されないし。 既に解ってる連中同士の内輪ネタでしかない。
89 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 18:52:38 ] Rubyでオブジェクト指向の基礎を学ぶのは厳しい こんな感じなんだ〜程度なら十分だけど
90 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 18:59:41 ] 実際に実行可能な言語に落とした時点でオブジェクト指向でもなんでもないものになる オブジェクト指向は実行しないからこそ美しい 実行のための仕組みは邪魔
91 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 19:08:43 ] たのしいRuby 第3版がもう出てた。
92 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 19:19:12 ] >>78-79 なるほど 振舞いやパターンを明示することを積極的に排除する理由があるわけじゃなかったのか いわれてみれば静的な型に頼らないってことと振舞いをまったく規定しないってことには大きな開きがあったね >>76-77 instance_evalとか使いまくりがデフォなの?
93 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 19:55:17 ] これから学ぶweb関連のプログラミング言語としてはrubyでいいでつか?
94 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 20:03:11 ] > でつ
95 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 20:06:10 ] Javascriptと、PHPかJava辺りがいいんじゃないかな
96 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 20:41:58 ] かなーり微妙臭いふぃんきではある 主要なフリーウェアでスクリプト書くときなんか大概Python主流だし RubyもPythonも両方やるのが吉
97 名前:デフォルトの名無しさん [2010/03/25(木) 22:17:44 ] ひとつやっとけばOKという発想は捨てよう。
98 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 22:31:57 ] そういう意味ではライブラリが共通の.NETは楽だわな
99 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 22:35:11 ] >>89 真面目な質問だがOOPの基礎を学ぶのが簡単な言語はどれ? OOPなんてcode書かなきゃわかるようにならん codeを書きやすいか,書く気になるかどうかのトレードオフが大きいからね
100 名前:99 mailto:sage [2010/03/25(木) 22:50:23 ] >>99 > codeを書きやすいか,書く気になるかどうかのトレードオフが大きいからね →…どうかとのトレードオフ… すまん
101 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 23:13:35 ] LISPかな。 いや、冗談半分本気半分なんだけど、OOPとはなんぞやってのが あまりにも難しすぎる。 オブジェクトが自立性を持っていて、受け取ったメッセージを自分で判断して 振舞う(メッセージを拒絶することも含む)ような処理系でのプログラミングが OOPなんだぜ! という学派からすれば、Rubyはまさにそれではある。
102 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 23:14:57 ] OOの前にOOでない言語を身につけた方がいいな お薦めはCだ
103 名前:デフォルトの名無しさん mailto:sage [2010/03/25(木) 23:28:43 ] 自分もCから入ったからCじゃないものから入る人の気持ちは分からない いきなりRubyを使うってどんな感じなんだろう
104 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 00:51:26 ] LispやCから入れと言ったら挫折する人が多いと思うな 俺はいきなりRubyでも良いと思うけどな まずプログラムをどんどん書かないと 遊びでも良いから何か実用性を見出せないと強制しないと続かないと思う 昔はBasicで入った人も多いし(俺はFortran→Cで入ったが)
105 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 01:01:25 ] プログラムをどんどん書くって結構難しい。 家では本を読むだけだから力がつかない。 やっぱ仕事でプレッシャーかからないとダメ。
106 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 01:04:14 ] 作りたいものがないならプログラミング言語なんて覚えなくていいし学び続けられるものじゃない 作りたいものが特にないのならRubyのことなんて忘れて他のことやれ もし本当にRubyのようなものが必要なのなら、たとえ今離れてもやっぱり戻ってくる
107 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 01:07:58 ] 遊ぶのなら、今日日はJavaとかActionScript(Flash)からとかじゃない? WEBアプリをSwingやFlexでとか、ぶっちゃけ楽しい。 サーバサイドはRailsでもPHPでもとにかく楽できるし、その辺全部無料で Windowでも完結できるし。 で、その辺から入ると、最後までCにたどり着かない可能性が高いと。
108 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 01:35:20 ] >>107 Java使ってるけど正直プログラミング初心者には難しいのでは Rubyの方がまだ簡単で何かできる感じがするが たとえばファイル名を整理するとかファイルの中身を整形しなおす とかデータ合わせるとか実用的でそんなに難しくない これをJava+Swingでやれといったら初めは大変だと思うんだが
109 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 01:39:36 ] > たとえばファイル名を整理するとかファイルの中身を整形しなおす > とかデータ合わせるとか実用的でそんなに難しくない いや、遊びでそんなことしないし 遊びと言えば、なんか表示して動かす。BASICから入った人なんかは 特にそうじゃね?他には音を鳴らすってパターンもあったけどもさ そう言う意味で、SwingやらFlashやらって言ってみた
110 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 01:42:11 ] Rubyは「おまじない」がないか、または最低限レベル(思想的にはBASICに近い) JavaやC++はあらゆるパラメータを自力で全部指定できるのがメリットだが、初心者にはただの負担だ
111 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 01:44:23 ] N88-BASICはおまじないの嵐だったがな もちろん、BASICマガジンに載ってたコードの事だが
112 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 02:01:19 ] >>106 とりあえず何か書いてから考察なり質問なりすべきw どうしたらコード書くか言語学習するかなんて100%自分の動機だけの問題じゃんね
113 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 02:29:46 ] cはゆるゆる過ぎて変な癖がつくと思う。 かといってrubyも変にperl互換な所で、変な癖がつくのは変わらないけど。 ゆるゆるから厳しい所はキツいので、最初から厳しく型宣言必要な言語のほうが、いいかもね。後から緩く成る分には楽で楽しく成るだけだし。 いろいろまんべんなく使ってみるのが無難かもね。
114 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 02:32:45 ] Rubyを使ってると、しょうもないことを偉そうに語りたがるようになるということはわかった。
115 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 02:54:35 ] しょうもないことってなに?
116 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 03:01:20 ] 片栗粉はゆるゆる過ぎて変なクセがつくと思う かといって羊羹も変にこんにゃく互換で変なクセがつくのは変わらないけど ゆるゆるから厳しいところはキツイので最初から厳しく型成形必要な射出のほうがいいかもね
117 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 03:04:45 ] 意味がわからんが、片栗粉はちゃんとレンジでチンしたのか?
118 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 09:18:26 ] 初めから厳しい言語使えとかまんべんなく使えなんてまず挫折すると思うが コンパイル一つだって失敗するかも知れないのに いきなり高い目標設定せずにとにかく自分が入りやすい言語を使う方が良いと思う
119 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 09:52:34 ] おっさんしゃべり場
120 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 11:07:01 ] ruby/tkってデフォルトでrubyに入ってるの? tkだとスレッドに問題が発生することないのか 教えてエロい人!!
121 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 11:14:00 ] スクリプトを実行する人のマシンにRubyがインストールされていて、 RubyのC言語ファイルの最初のコンパイル時にtkが有効にされていて、 なおかつ同じパソコンにTcl/Tkまたはtklib相当のものが別途インストールされていれば動作する
122 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 11:21:33 ] …まあ、自分用だよな 他人にウィンドウを提供するために使うようなもんでもない
123 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 11:26:24 ] 横からだけど、じゃあ他人用にするなら何がいいと言うんだ 選択肢が多すぎて逆にどれを選んでいいかわからん
124 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 12:04:48 ] rubyだめじゃん rails以外は何にも作れないじゃん
125 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 12:15:21 ] >>123 Rubyは使わない
126 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 12:17:40 ] ○○するのにはRubyは便利 ××するのにはRubyは不便 ○○に入るのが自分用スクリプトの作成 ××に入るのがウィンドウでGUI
127 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 12:19:08 ] なんでこんな中途半端なポジションになってしまったんだろう・・・
128 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 12:25:22 ] >>124 早く気付けて良かったですね
129 名前:デフォルトの名無しさん mailto:sage [2010/03/26(金) 12:29:07 ] >>127 どこが中途半端なのかわからない