プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
Ruby on RailsについてはWEBプログラミング板で
前スレ
Ruby 初心者スレッド Part 59
http://echo.2ch.net/test/read.cgi/tech/1475394638/
るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/
Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/
逆引きRuby
http://www.namaraii.com/rubytips/
探検
Ruby 初心者スレッド Part 60 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2017/04/29(土) 02:01:58.34ID:urVXnFrH
271デフォルトの名無しさん
2017/05/25(木) 13:14:51.22ID:LTbJxhuY pg gemをbundle installするとこける
gem install では通るんだけどなんでかな
gem install では通るんだけどなんでかな
272デフォルトの名無しさん
2017/05/27(土) 04:40:36.04ID:SdHoYqqp rubyからWin32APIのGetLastErrorを使用したいんだけどエラーが出てしまう。
どうしたらいいか教えてください。。
module WIN32API
extend Fiddle::Importer
dlload 'C:\\Windows\\System32\\user32.dll'
extern 'short GetKeyState(int)' #こっちはOK
extern 'char* GetLastError()' #こっちはNG
end
--以下エラー
cannot find the function: GetLastError() (Fiddle::DLError)
どうしたらいいか教えてください。。
module WIN32API
extend Fiddle::Importer
dlload 'C:\\Windows\\System32\\user32.dll'
extern 'short GetKeyState(int)' #こっちはOK
extern 'char* GetLastError()' #こっちはNG
end
--以下エラー
cannot find the function: GetLastError() (Fiddle::DLError)
273デフォルトの名無しさん
2017/05/27(土) 05:15:11.73ID:6GQ16ypm 「user32.dll getlasterror Win32API」で検索!
Library - Kernel32.lib
DLL - Kernel32.dll
には、有りそうだけど、user32.dll には、あるかどうか分からない
DllImport("kernel32.dll", SetLastError = true)
Library - Kernel32.lib
DLL - Kernel32.dll
には、有りそうだけど、user32.dll には、あるかどうか分からない
DllImport("kernel32.dll", SetLastError = true)
274デフォルトの名無しさん
2017/05/27(土) 06:45:17.62ID:SdHoYqqp >>273
早速ありがとうございました!
無事読み込めました。。。
参考までに修正版のコードはこちらです。
module WIN32API
extend Fiddle::Importer
dlload 'user32.dll','kernel32.dll'
include Fiddle::Win32Types #DWORDとか使えるようにする
include Fiddle::BasicTypes
extern 'DWORD GetLastError()'
end
WIN32API.GetLastError
早速ありがとうございました!
無事読み込めました。。。
参考までに修正版のコードはこちらです。
module WIN32API
extend Fiddle::Importer
dlload 'user32.dll','kernel32.dll'
include Fiddle::Win32Types #DWORDとか使えるようにする
include Fiddle::BasicTypes
extern 'DWORD GetLastError()'
end
WIN32API.GetLastError
275デフォルトの名無しさん
2017/05/27(土) 10:22:39.80ID:SdHoYqqp すみませんもう一つ教えてください。
SendInputを使って最終的にはマウス入力/キーボード入力を行おうと考えていますが
うまくいきません。何がおかしいのでしょうか。。
---
module WIN32API
extend Fiddle::Importer
dlload 'user32.dll','kernel32.dll'
include Fiddle::Win32Types
extern 'int SendInput(int,void* ,int)'
extern 'DWORD GetLastError()'
MOUSEINPUT=struct(["DWORD type","int dx","int dy","DWORD mouseData","DWORD dwFlags","DWORD time","ulong dwExtraInfo"])
end
module SendKey
INPUT_MOUSE = 0x00000000
MOUSEEVENTF_ABSOLUTE = 0x00008000
MOUSEEVENTF_MOVE = 0x00000001
end
input = WIN32API::MOUSEINPUT.malloc
input.type=SendKey::INPUT_MOUSE
input.dx=500
input.dy=500
input.dwFlags=SendKey::MOUSEEVENTF_ABSOLUTE|SendKey::MOUSEEVENTF_MOVE
p WIN32API.SendInput(1,input,28) #出力:0 備考:sizeof(MOUSEINPUT)=28
p WIN32API.GetLastError #出力:87(パラメータが間違っています。)
-----
SendInputを使って最終的にはマウス入力/キーボード入力を行おうと考えていますが
うまくいきません。何がおかしいのでしょうか。。
---
module WIN32API
extend Fiddle::Importer
dlload 'user32.dll','kernel32.dll'
include Fiddle::Win32Types
extern 'int SendInput(int,void* ,int)'
extern 'DWORD GetLastError()'
MOUSEINPUT=struct(["DWORD type","int dx","int dy","DWORD mouseData","DWORD dwFlags","DWORD time","ulong dwExtraInfo"])
end
module SendKey
INPUT_MOUSE = 0x00000000
MOUSEEVENTF_ABSOLUTE = 0x00008000
MOUSEEVENTF_MOVE = 0x00000001
end
input = WIN32API::MOUSEINPUT.malloc
input.type=SendKey::INPUT_MOUSE
input.dx=500
input.dy=500
input.dwFlags=SendKey::MOUSEEVENTF_ABSOLUTE|SendKey::MOUSEEVENTF_MOVE
p WIN32API.SendInput(1,input,28) #出力:0 備考:sizeof(MOUSEINPUT)=28
p WIN32API.GetLastError #出力:87(パラメータが間違っています。)
-----
276デフォルトの名無しさん
2017/05/27(土) 10:27:11.94ID:67vlwxuq 今回の件と関係あるかはともかくWIN32APIってもう非推奨じゃなかったっけ?
277デフォルトの名無しさん
2017/05/27(土) 12:01:00.86ID:pz2epJPP rubyは32bit版なのかな?
278デフォルトの名無しさん
2017/05/27(土) 12:46:05.61ID:SdHoYqqp Win32API非推奨なんですね。。
ググってみた感じいまはWSHSHELLとかでしょうか?
ちなみにRubyは64bit版を使ってました。。。
ググってみた感じいまはWSHSHELLとかでしょうか?
ちなみにRubyは64bit版を使ってました。。。
279デフォルトの名無しさん
2017/05/27(土) 13:10:51.88ID:reRwAhMh 非推奨とか言い出したらそもそもWinでRuby自体がアウトだから気にしなくてよい
280デフォルトの名無しさん
2017/05/27(土) 13:21:59.20ID:olQh0zw8281デフォルトの名無しさん
2017/05/27(土) 14:00:44.16ID:4VVIqOhp 意図するライブラリがロードされていない or 意図しない関数がコールされているんじゃないか?
C/C++で同じ動作をするコードを書いて何のファイルのどの関数が呼ばれているのか調べた方が良さそうな気も
Rubyから呼ぶ場合に限らずその辺の管理は全てプログラマ任せの上に純正のSDKやIDEの支援も得られないしな
あとWindowsAPIを叩いて作業するならWindowsSDKはほぼ必須
C/C++で同じ動作をするコードを書いて何のファイルのどの関数が呼ばれているのか調べた方が良さそうな気も
Rubyから呼ぶ場合に限らずその辺の管理は全てプログラマ任せの上に純正のSDKやIDEの支援も得られないしな
あとWindowsAPIを叩いて作業するならWindowsSDKはほぼ必須
282デフォルトの名無しさん
2017/05/27(土) 15:09:14.53ID:6GQ16ypm >p WIN32API.GetLastError #出力:87(パラメータが間違っています。)
カッコを付ければ?
p WIN32API.GetLastError()
カッコを付ければ?
p WIN32API.GetLastError()
283デフォルトの名無しさん
2017/05/27(土) 15:15:15.96ID:pz2epJPP >>278
64bitだと構造体のサイズが違うよ
64bitだと構造体のサイズが違うよ
284デフォルトの名無しさん
2017/05/28(日) 10:53:17.15ID:pzrDxs4u case文でgetsを使って入力を受け付けたいとき日本語ってどうするんです?
hand = gets.chomp
case = hand
when "あ"
puts "グー”
.
.
.
else
puts "反則"
end
例えばこんな感じの簡単な文だけど
"あ"の中身の部分を1にしたり
そもそも .to_iにして数値にしたりすると
ちゃんと働いてくれるから
そもそも日本語入力はなにかいるんじゃないか、もしくはできないんじゃないか
と思っていて、検索してもわからんのです
hand = gets.chomp
case = hand
when "あ"
puts "グー”
.
.
.
else
puts "反則"
end
例えばこんな感じの簡単な文だけど
"あ"の中身の部分を1にしたり
そもそも .to_iにして数値にしたりすると
ちゃんと働いてくれるから
そもそも日本語入力はなにかいるんじゃないか、もしくはできないんじゃないか
と思っていて、検索してもわからんのです
285デフォルトの名無しさん
2017/05/28(日) 11:23:43.03ID:eyTJlEl0 case = handってなんだ
286デフォルトの名無しさん
2017/05/28(日) 11:38:33.26ID:nOYRngqN print "input anything and Enter> "
input = gets.chomp
puts "default file encoding:"+ __ENCODING__.to_s
puts "actual external encoding: " + input.encoding.to_s
実行結果 (Windowsコマンドプロンプトで単に ruby test.rb と実行)
input anything and Enter> nya-
default file encoding:UTF-8
actual external encoding: Windows-31J
ということで文字列のエンコーディングが違うので別物だと思われてる
Windows-31Jの「あ」とUTF-8の「あ」は比較上別物になる
irb> str = "にゃー"
=> "にゃー"
irb> str.encode("Windows-31J") == str.encode("UTF-8")
=> false
「Rubyの文字エンコーディング」について調べて自分で理解するんだ
これはここでちらっと「おまじない」を述べても逆に泥沼になるぞw
input = gets.chomp
puts "default file encoding:"+ __ENCODING__.to_s
puts "actual external encoding: " + input.encoding.to_s
実行結果 (Windowsコマンドプロンプトで単に ruby test.rb と実行)
input anything and Enter> nya-
default file encoding:UTF-8
actual external encoding: Windows-31J
ということで文字列のエンコーディングが違うので別物だと思われてる
Windows-31Jの「あ」とUTF-8の「あ」は比較上別物になる
irb> str = "にゃー"
=> "にゃー"
irb> str.encode("Windows-31J") == str.encode("UTF-8")
=> false
「Rubyの文字エンコーディング」について調べて自分で理解するんだ
これはここでちらっと「おまじない」を述べても逆に泥沼になるぞw
287デフォルトの名無しさん
2017/05/28(日) 11:47:56.51ID:pzrDxs4u288デフォルトの名無しさん
2017/05/28(日) 11:52:43.05ID:pzrDxs4u しまった「いづれ」ではなくて「いずれ」だった、なんかこういうミスのほうが
恥ずかしい・・・
しかし文字エンコーディングの件で気になったけど
それは文字コードを指定している場合でも・・・?
なんか最初にそれこそ、そこをおまじないと言っているのかもしれない
けど、# coding: utf-8
みたいなの書いとけって言われるじゃない。
文字化けしないようにとか、そんな感じで。
恥ずかしい・・・
しかし文字エンコーディングの件で気になったけど
それは文字コードを指定している場合でも・・・?
なんか最初にそれこそ、そこをおまじないと言っているのかもしれない
けど、# coding: utf-8
みたいなの書いとけって言われるじゃない。
文字化けしないようにとか、そんな感じで。
289デフォルトの名無しさん
2017/05/28(日) 11:55:12.07ID:rKaPw5GE 狭義的にはスクリプトファイルのエンコーディングと外部入力文字列のエンコーディングを揃えないといかん
STDINのエンコーディングをスクリプトファイルのエンコーディングに合わせるのが楽だと思う
ruby -E UTF-8 hoge.rbでスクリプト起動しろ
getsで入ってくる文字列が全部UTF-8になる
STDINのエンコーディングをスクリプトファイルのエンコーディングに合わせるのが楽だと思う
ruby -E UTF-8 hoge.rbでスクリプト起動しろ
getsで入ってくる文字列が全部UTF-8になる
290デフォルトの名無しさん
2017/05/28(日) 12:39:36.05ID:pzrDxs4u >>289
ちょっとわかんなかった。
色々言っていることの推測はしたんだけど、
そんなファイルねーよ!からはじまり
そんなエンコーディングネーム知らんといわれ、ランタイムエラーといわれ
あ、コマンドプロンプトって文字コードシフトJISとかいうのだから
あかんのかな?って思って
utf-8にしてみたけど、判定がelseに行くのだった。
あははは。
わざわざありがとう。でも、私初心者だからだめみたいだぜ。
おまえなんかwhile文の勉強でもしてなさいってことだと思うわ。
ちょっとわかんなかった。
色々言っていることの推測はしたんだけど、
そんなファイルねーよ!からはじまり
そんなエンコーディングネーム知らんといわれ、ランタイムエラーといわれ
あ、コマンドプロンプトって文字コードシフトJISとかいうのだから
あかんのかな?って思って
utf-8にしてみたけど、判定がelseに行くのだった。
あははは。
わざわざありがとう。でも、私初心者だからだめみたいだぜ。
おまえなんかwhile文の勉強でもしてなさいってことだと思うわ。
291デフォルトの名無しさん
2017/05/28(日) 12:55:41.60ID:cMT8Sa9/ コマンドプロンプトなら"chcp 65001"しないと駄目なんじゃない?
ちょっと手許にwindows機ないからわかんないけど
ちょっと手許にwindows機ないからわかんないけど
292デフォルトの名無しさん
2017/05/28(日) 13:34:17.41ID:mQ0E20+1 cmd exe の chcp65001 はバグがあって使い物にならない
293デフォルトの名無しさん
2017/05/28(日) 15:22:51.06ID:aUadI2mt VSCode使っている人いない?
デバッグモードでのgetsのって値入力処理はどうすればいいのか分からなくて困っている。
デバッグモードでのgetsのって値入力処理はどうすればいいのか分からなくて困っている。
294デフォルトの名無しさん
2017/05/28(日) 16:49:16.07ID:rKaPw5GE STDIN/STDOUTのねじ曲げは現行のIDEでVSCode「でだけ」できない
素のRubyではできるのにね
require 'stringio' if $DEBUG
$stdin = StringIO.open("にゃーん".encode("Windows-31J")) if $DEBUG
puts "You are a cat" if gets.chomp == "にゃーん".encode("Windows-31J")
素のRubyではできるのにね
require 'stringio' if $DEBUG
$stdin = StringIO.open("にゃーん".encode("Windows-31J")) if $DEBUG
puts "You are a cat" if gets.chomp == "にゃーん".encode("Windows-31J")
295デフォルトの名無しさん
2017/05/28(日) 17:18:28.96ID:5PeSitGp pythonのやつをパクるしかない
296デフォルトの名無しさん
2017/05/28(日) 17:40:48.08ID:MqtJ47ff 極薄view用意して、そこだけ手動でテストすればいいよ
297デフォルトの名無しさん
2017/05/28(日) 18:57:58.47ID:QwjzxVOm コマンドプロンプトは、Windows-31J, CP932 か
PowerShell, PowerShell_ise は、UTF-8 じゃないの?
PowerShell, PowerShell_ise は、UTF-8 じゃないの?
298デフォルトの名無しさん
2017/05/28(日) 22:05:31.04ID:OcOYN7N8 windowsで真面目にRuby使うならコマンドプロンプトのままじゃ辛い
コンソールエミュで良さそうなの探して入れると良いよ
コンソールエミュで良さそうなの探して入れると良いよ
299デフォルトの名無しさん
2017/05/29(月) 00:55:58.04ID:+B2zTCTS いやVirtualBoxの上のLinuxにSSHクライアントで接続した方がいいよ
300デフォルトの名無しさん
2017/05/29(月) 01:06:21.43ID:zS+u+zXg 出力はワイド文字に変換してくれるのでpythonみたいにchcp 65001しなくていいから楽ちん。
入力は気を利かせてくれてないから、$stdin.set_encodingで設定したほうがいいかな
あとはARGVとかDirで取得するファイル名とかをデフォルトでUTF-8にしてくれたらうれしいな
全般的にWindowsに気を利かせてくれているけど、そのノウハウをまとめたページがないから
不親切に見えるだろうな
入力は気を利かせてくれてないから、$stdin.set_encodingで設定したほうがいいかな
あとはARGVとかDirで取得するファイル名とかをデフォルトでUTF-8にしてくれたらうれしいな
全般的にWindowsに気を利かせてくれているけど、そのノウハウをまとめたページがないから
不親切に見えるだろうな
301デフォルトの名無しさん
2017/05/29(月) 13:33:58.90ID:SjlSz+oM ネットにはデマ情報がいっぱい残ってるので正しい情報をメモ
cmd で UTF-8 使える方法 (chcp 65001 について) ttp://nazochu.blogspot.jp/2011/08/blog-post_26.html
mintty ttp://dogmap.jp/2011/11/15/mintty/
mintty ttp://tanakh.jp/posts/2011-11-15-windows-terminal.html
↓
色々紆余曲折あったけど Git インスコして GitBash 使うのが一番楽っぽい
https://git-for-windows.github.io/
cmd で UTF-8 使える方法 (chcp 65001 について) ttp://nazochu.blogspot.jp/2011/08/blog-post_26.html
mintty ttp://dogmap.jp/2011/11/15/mintty/
mintty ttp://tanakh.jp/posts/2011-11-15-windows-terminal.html
↓
色々紆余曲折あったけど Git インスコして GitBash 使うのが一番楽っぽい
https://git-for-windows.github.io/
302デフォルトの名無しさん
2017/05/29(月) 13:49:40.20ID:lxl3zEmg >>301
こういうWindows版を使ったこともなさそうな人がおせっかいで書く情報が迷惑でしかない
こういうWindows版を使ったこともなさそうな人がおせっかいで書く情報が迷惑でしかない
303デフォルトの名無しさん
2017/05/29(月) 18:54:37.47ID:8MRHN7xk ルビとRubyの話
なぜWordのデフォルトフォントサイズは「10.5」なのか? - ねとらぼ
http://nlab.itmedia.co.jp/nl/articles/1705/29/news020.html
なぜWordのデフォルトフォントサイズは「10.5」なのか? - ねとらぼ
http://nlab.itmedia.co.jp/nl/articles/1705/29/news020.html
304デフォルトの名無しさん
2017/05/29(月) 19:14:35.71ID:ZV+SCRde 今回の民法改正、ソフトウェア受託開発の場合、(検収後ではなく)バグ発見後1年瑕疵担保責任があるということで、地獄かよ、と思ったが、
元々問題が起きがちな受託案件がビジネス的に成立しなくなることで強制的に業界再編につながるなら良いことかもと思うようになった。
一部で地獄を見ても。
https://twitter.com/yukihiro_matz/status/869061879389343744
元々問題が起きがちな受託案件がビジネス的に成立しなくなることで強制的に業界再編につながるなら良いことかもと思うようになった。
一部で地獄を見ても。
https://twitter.com/yukihiro_matz/status/869061879389343744
305デフォルトの名無しさん
2017/05/29(月) 19:16:13.40ID:ZV+SCRde ニュース - 改正民法が成立、「瑕疵担保責任」などシステム開発契約に影響大:ITpro
http://b.hatena.ne.jp/entry/itpro.nikkeibp.co.jp/atcl/news/17/052601508/
http://b.hatena.ne.jp/entry/itpro.nikkeibp.co.jp/atcl/news/17/052601508/
306デフォルトの名無しさん
2017/05/29(月) 19:33:27.14ID:00NVazHZ >>305
Ruby終了の教えらせ?
Ruby終了の教えらせ?
307デフォルトの名無しさん
2017/05/29(月) 19:34:02.42ID:00NVazHZ お知らせ
308デフォルトの名無しさん
2017/05/29(月) 21:37:42.32ID:LfszU9UW 契約自由の原則は消えないんだよな
http://www.techvan.co.jp/media/quality/civil-code
rubyとかだと小さいシステムやプロトタイプが多いだろうから
契約に漏らさず明記しておくのが大事か
5年とかもう使えないようなバージョンとか出てきて作り直しになりかねない
http://www.techvan.co.jp/media/quality/civil-code
rubyとかだと小さいシステムやプロトタイプが多いだろうから
契約に漏らさず明記しておくのが大事か
5年とかもう使えないようなバージョンとか出てきて作り直しになりかねない
309デフォルトの名無しさん
2017/05/29(月) 21:50:13.10ID:0c0Yo+hh 個々の契約のほうが優越なのだからふつうはそんなに問題は起きない
最低最悪のラインを決めただけ
いちばん騒いでるのが働いたことのない人といういろいろ縮図なやつだ
最低最悪のラインを決めただけ
いちばん騒いでるのが働いたことのない人といういろいろ縮図なやつだ
310デフォルトの名無しさん
2017/05/29(月) 22:06:06.39ID:LfszU9UW311デフォルトの名無しさん
2017/05/30(火) 09:22:17.83ID:hVv0NVyW 客が瑕疵担保責任法の法改正を知ってくると思うから、今後5年無償保証をお願いされるだろう
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限の直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限の直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。
312デフォルトの名無しさん
2017/05/30(火) 10:25:03.46ID:gxWnkgCC 客が瑕疵担保責任法の法改正を知ってくると思うから、今後5年無償保証をお願いされるだろう
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限の直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限の直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。
313デフォルトの名無しさん
2017/05/30(火) 13:25:40.32ID:KV35bhXw 保守に強いとか関係ないだろ
結局は技術力が高かろうと
エラーは出るからな
結局は技術力が高かろうと
エラーは出るからな
314デフォルトの名無しさん
2017/05/30(火) 13:27:12.19ID:52EkKXSJ >>313
これコピペ
これコピペ
315デフォルトの名無しさん
2017/05/31(水) 12:38:22.60ID:nyiBm3r5316デフォルトの名無しさん
2017/05/31(水) 23:19:57.63ID:X74K7lOs るびまの ePub 版ってないの?
たまに話題に出てたり個人的にやってる人はいるみたいだけど。
たまに話題に出てたり個人的にやってる人はいるみたいだけど。
317デフォルトの名無しさん
2017/06/01(木) 03:04:21.50ID:TLZ7U8Co318デフォルトの名無しさん
2017/06/01(木) 12:09:40.74ID:o/dQD8LP >グイドは自称するほど互換性を大事にしねぇ
2から3の書き換えの感想でそんなこと言ってるのか
頭沸いてんな
2から3の書き換えの感想でそんなこと言ってるのか
頭沸いてんな
319デフォルトの名無しさん
2017/06/01(木) 17:59:48.16ID:VtNuZqDV320デフォルトの名無しさん
2017/06/01(木) 18:02:47.78ID:VtNuZqDV あっ 勘違いしてた
「るびま」と書いてあったな
オレが関心あるのは「るりま」の方だった
「るびま」と書いてあったな
オレが関心あるのは「るりま」の方だった
321デフォルトの名無しさん
2017/06/01(木) 18:14:59.52ID:n7u6yBLf るりまは元が html5 になってるみたいだし、
メタ情報をちょろっと追加してパッケージングすりゃ ePub になるよ。
そんなに難しいことじゃない。
メタ情報をちょろっと追加してパッケージングすりゃ ePub になるよ。
そんなに難しいことじゃない。
322デフォルトの名無しさん
2017/06/02(金) 09:51:10.10ID:8FvNWFqN >>321
教えて欲しいんだけど
例えば2.0.0のバージョンのドキュメントをまとめてダウンロードするにはどこに行けばいいんだろ?
https://www.ruby-lang.org/ja/documentation/
教えて欲しいんだけど
例えば2.0.0のバージョンのドキュメントをまとめてダウンロードするにはどこに行けばいいんだろ?
https://www.ruby-lang.org/ja/documentation/
323デフォルトの名無しさん
2017/06/04(日) 07:56:22.18ID:4B60732N 書き込みできない?
324デフォルトの名無しさん
2017/06/04(日) 07:57:07.55ID:4B60732N 322はできることなら削除したい
もうレスを確認する為にここに来ることはない
もうレスを確認する為にここに来ることはない
325デフォルトの名無しさん
2017/06/06(火) 19:13:48.69ID:wrPFF999 windowsでirb使うとき何か一文字打たないと
↑キーで履歴が出ないんだけど何とかならない?
ググってreadlineとかbinに入れてみたけどダメだった
↑キーで履歴が出ないんだけど何とかならない?
ググってreadlineとかbinに入れてみたけどダメだった
326デフォルトの名無しさん
2017/06/08(木) 13:19:43.68ID:oPuedIYN うちはでるよ
327325
2017/06/08(木) 21:11:29.66ID:cdZWf+lt マジか。>>325はActiveScriptRubyだがいろいろ試した結果(環境はWin7 32bit)
ActiveScriptRuby 出ない
+ readline.dll 出ない
RubyInstaller 出ない
+ readline.dll 出る
ActiveScriptRuby 出ない
+ readline.dll 出ない
RubyInstaller 出ない
+ readline.dll 出る
328デフォルトの名無しさん
2017/06/16(金) 16:28:56.85ID:qOsPLqtM うちのRubyInstaller2(Win8.1)ではirbやpryは大丈夫
jirb(JRubyのirb)は何か一文字打たないと↑が反応しない
あとruby -pe ""も何か一文字撃たないと駄目な模様
jirb(JRubyのirb)は何か一文字打たないと↑が反応しない
あとruby -pe ""も何か一文字撃たないと駄目な模様
329デフォルトの名無しさん
2017/06/17(土) 13:52:50.98ID:CkD5o1Z0 これからrubyをやる意味ってなにが考えられますか?
330デフォルトの名無しさん
2017/06/17(土) 14:36:25.65ID:qMkdrUOQ 過去に一度だけプチブームになったことがあったんだけど
その原因と、そのあと下火になった理由を探求するとかかな
駄目と分かっている人は初めから駄目だよ、って言ってたんだけど
残念ながら世の中の全員が賢明というわけではなかったから
やはり、一過性のブームとか、時代でとか、そういうのはあるもので
今から追体験したければRubyはよい選択だと思うよ
ただ、さっきも書いたけど、全員が間違ったわけじゃないんだよ
半数以上かそれ以上の人はダメって初めから言ってたんだよ
あとはMarzの勉強かな
あの人、頭の弱い人を騙すことに関してはものすごい技術を持ってるから
そういうのに興味があればって感じ
具体的には「モノ」を中心に考えさせて、大事なものを見えなくさせたり
一見効率的に見えて実は遠回りっていう「局所解」に追い込んだりするその手法
おもしろいのはRuby3.0をどうするのか、なぜか今本人も困ってるところ
人を呪わば穴二つって言うように、他人を追い込むツールを作ってるつもりで
自分自身もまた追い込まれるってのは在るみたいね
その原因と、そのあと下火になった理由を探求するとかかな
駄目と分かっている人は初めから駄目だよ、って言ってたんだけど
残念ながら世の中の全員が賢明というわけではなかったから
やはり、一過性のブームとか、時代でとか、そういうのはあるもので
今から追体験したければRubyはよい選択だと思うよ
ただ、さっきも書いたけど、全員が間違ったわけじゃないんだよ
半数以上かそれ以上の人はダメって初めから言ってたんだよ
あとはMarzの勉強かな
あの人、頭の弱い人を騙すことに関してはものすごい技術を持ってるから
そういうのに興味があればって感じ
具体的には「モノ」を中心に考えさせて、大事なものを見えなくさせたり
一見効率的に見えて実は遠回りっていう「局所解」に追い込んだりするその手法
おもしろいのはRuby3.0をどうするのか、なぜか今本人も困ってるところ
人を呪わば穴二つって言うように、他人を追い込むツールを作ってるつもりで
自分自身もまた追い込まれるってのは在るみたいね
331デフォルトの名無しさん
2017/06/17(土) 15:18:40.82ID:KrWMylVm 具体論がまったくないところがすごいなw
332デフォルトの名無しさん
2017/06/17(土) 16:22:03.43ID:b4+zDofQ333デフォルトの名無しさん
2017/06/17(土) 16:52:41.05ID:CkD5o1Z0 そうですか
GUIはどれを使えばいいですか?
GUIはどれを使えばいいですか?
334デフォルトの名無しさん
2017/06/17(土) 17:23:28.18ID:RyxkXkzJ どうしてもやりたいならjruby+jrubyfx楽よ
335デフォルトの名無しさん
2017/06/17(土) 17:39:53.37ID:ZEU2lDOZ この時点で、rubyだめってヒシヒシ伝わる。
336デフォルトの名無しさん
2017/06/17(土) 18:11:55.35ID:n14YEU6w >>330
初見のコピペ
初見のコピペ
337デフォルトの名無しさん
2017/06/17(土) 18:16:55.55ID:n14YEU6w338デフォルトの名無しさん
2017/06/17(土) 19:44:55.62ID:KrWMylVm339デフォルトの名無しさん
2017/06/17(土) 19:46:39.93ID:KgLuH5ks まつもと氏は合理主義のようだけどGUIにはそういうのは及んでないんですか?
340デフォルトの名無しさん
2017/06/17(土) 20:05:28.72ID:x959dLvJ341デフォルトの名無しさん
2017/06/17(土) 21:40:11.74ID:83r52Wsn342デフォルトの名無しさん
2017/06/17(土) 21:41:18.42ID:83r52Wsn343デフォルトの名無しさん
2017/06/17(土) 21:42:43.07ID:83r52Wsn344デフォルトの名無しさん
2017/06/17(土) 21:44:31.17ID:83r52Wsn345デフォルトの名無しさん
2017/06/17(土) 22:00:59.26ID:qMkdrUOQ あぁごめんな
ただあの人のインタビューとか読めばわかるけど
逆張り逆張り言ってる
あの人自身もRubyの筋が良いとかメインストリーム的な思想であるとは
考えてないんだよ
ただ、自分の人生の中で逆張りした場合にうまくいくことが多かったので
逆張りし続けているんだとか
だからRuby3.0でも逆張りの一種として
静的型の機能は導入しない方向を検討しているんだろうな
ただそう何度も逆張りが上手くいくとは思わないし
逆張りはしょせん逆張りだろ?あだ花というかなんというか
そういうこともあって結局Rubyはプチブームで終わった現状があるわけだし
変なことして注目を集めることはあってもそれは一過性だよ、芸人じゃあるまいし
しかも逆張りしたときに自分にとって都合がよいことが多かったってだけで
使い手のことは別に考慮されてないんだよなー
ただあの人のインタビューとか読めばわかるけど
逆張り逆張り言ってる
あの人自身もRubyの筋が良いとかメインストリーム的な思想であるとは
考えてないんだよ
ただ、自分の人生の中で逆張りした場合にうまくいくことが多かったので
逆張りし続けているんだとか
だからRuby3.0でも逆張りの一種として
静的型の機能は導入しない方向を検討しているんだろうな
ただそう何度も逆張りが上手くいくとは思わないし
逆張りはしょせん逆張りだろ?あだ花というかなんというか
そういうこともあって結局Rubyはプチブームで終わった現状があるわけだし
変なことして注目を集めることはあってもそれは一過性だよ、芸人じゃあるまいし
しかも逆張りしたときに自分にとって都合がよいことが多かったってだけで
使い手のことは別に考慮されてないんだよなー
346デフォルトの名無しさん
2017/06/17(土) 22:03:22.44ID:KrWMylVm >>345
あいかわらす週刊誌レベルの根拠ない批判しかできないんだなー
あいかわらす週刊誌レベルの根拠ない批判しかできないんだなー
347デフォルトの名無しさん
2017/06/17(土) 22:07:45.91ID:qMkdrUOQ 普通に考えたら静的型を導入しない理由は全くないんだよ
ただ、あえて理由を挙げるとしたら、最初Rubyは動的型で出発したから
いまさら静的型の機能を入れ込むのは非常に難しいってことなんだよ
過去との互換性もあるし、そういうコミュニティーになっちゃってるしな
もちろんこれは動的型に「逆張り」した結果なんだろうけど
あとあと苦しいわなー
ただ、あえて理由を挙げるとしたら、最初Rubyは動的型で出発したから
いまさら静的型の機能を入れ込むのは非常に難しいってことなんだよ
過去との互換性もあるし、そういうコミュニティーになっちゃってるしな
もちろんこれは動的型に「逆張り」した結果なんだろうけど
あとあと苦しいわなー
348デフォルトの名無しさん
2017/06/17(土) 22:10:52.30ID:KrWMylVm349デフォルトの名無しさん
2017/06/17(土) 22:22:53.33ID:qMkdrUOQ ただここまで静的型が「ハマる」とは俺も想像してなかったし
Matzも想像できなかったんじゃろな
何だか知らないが、静的型はすべてにおいて丁度よい感じになってるんだよな
神がかった偶然がいくつも重なってるかんじで、最適解になってる
この牙城はなかなか崩せないよ、一つや二つのメリットじゃないからね
なんでこんなに上手くいったんだろうね
Matzも想像できなかったんじゃろな
何だか知らないが、静的型はすべてにおいて丁度よい感じになってるんだよな
神がかった偶然がいくつも重なってるかんじで、最適解になってる
この牙城はなかなか崩せないよ、一つや二つのメリットじゃないからね
なんでこんなに上手くいったんだろうね
350デフォルトの名無しさん
2017/06/17(土) 22:26:25.66ID:83r52Wsn351デフォルトの名無しさん
2017/06/17(土) 22:31:07.35ID:KrWMylVm352デフォルトの名無しさん
2017/06/17(土) 22:59:47.96ID:qMkdrUOQ まず動的型の根本的な慢性的ともいえる文法上の悩みの種は
どうにかして変数宣言をなくしたい欲求にかられるって点にある
動的型であるから変数宣言に型を書く必要がないので
なんとかして変数宣言自体をなくしたいっていう
まぁ分からなくもない
しかしながら変数宣言には変数の型を決める役割があるのとは別に
「変数のスコープを決める」という役割もあったわけで
安易に変数宣言を削除してしまったRubyやPythonのような言語は
大体において変数のスコープが奇妙なことになっているのじゃ
例えばRubyにおいては「@」であったり、ブロックローカル変数であったり
Pythonであればnonlocalであったり、なにか場当たり的だし
実質的な変数宣言の一種のような気もする
あと、if文や繰り返し文の後ろに続くブロックなどでスコープを持てなくなって
しまったりもな、なんせ、文法上、宣言を代入で代用しているから
代入と宣言の区別がつかないような状態で、かゆいところに手が届かない
だから結局、実は変数宣言は有ったほうが良いんじゃね?ってなって
ならついでに型も書けばってなって、今はさらにこれに加えて
型を書きたくなければ型推論使えば?ってことにまでなっちゃってる
型推論使えば変数宣言をする手間はほぼなくなるし
スコープを細かく制御できるようになるんだから
もう変数宣言が無いことはメリットにならなくなってしまった
まぁこんなのは氷山の一角でジャブだ
コンパイラによる型チェック云々言いたくなるところだがそれ以外にも
文法上の問題としてこういうのもあるということ
その他にも実行性能であったり、ドキュメントの自動生成であったり
リファクタリングの容易さであったり
IDEの入力補完etcのサポートのしやすさであったり
人間も型があったほうが読みやすいんじゃないかとか
結局コメントで型を書いてるんじゃね?とか
色々あるわな
なんか複合的なんだよ
動的型がここまでケチョンケチョンになるとは流石に想像できなかったわ
どうにかして変数宣言をなくしたい欲求にかられるって点にある
動的型であるから変数宣言に型を書く必要がないので
なんとかして変数宣言自体をなくしたいっていう
まぁ分からなくもない
しかしながら変数宣言には変数の型を決める役割があるのとは別に
「変数のスコープを決める」という役割もあったわけで
安易に変数宣言を削除してしまったRubyやPythonのような言語は
大体において変数のスコープが奇妙なことになっているのじゃ
例えばRubyにおいては「@」であったり、ブロックローカル変数であったり
Pythonであればnonlocalであったり、なにか場当たり的だし
実質的な変数宣言の一種のような気もする
あと、if文や繰り返し文の後ろに続くブロックなどでスコープを持てなくなって
しまったりもな、なんせ、文法上、宣言を代入で代用しているから
代入と宣言の区別がつかないような状態で、かゆいところに手が届かない
だから結局、実は変数宣言は有ったほうが良いんじゃね?ってなって
ならついでに型も書けばってなって、今はさらにこれに加えて
型を書きたくなければ型推論使えば?ってことにまでなっちゃってる
型推論使えば変数宣言をする手間はほぼなくなるし
スコープを細かく制御できるようになるんだから
もう変数宣言が無いことはメリットにならなくなってしまった
まぁこんなのは氷山の一角でジャブだ
コンパイラによる型チェック云々言いたくなるところだがそれ以外にも
文法上の問題としてこういうのもあるということ
その他にも実行性能であったり、ドキュメントの自動生成であったり
リファクタリングの容易さであったり
IDEの入力補完etcのサポートのしやすさであったり
人間も型があったほうが読みやすいんじゃないかとか
結局コメントで型を書いてるんじゃね?とか
色々あるわな
なんか複合的なんだよ
動的型がここまでケチョンケチョンになるとは流石に想像できなかったわ
353デフォルトの名無しさん
2017/06/17(土) 23:00:37.97ID:KrWMylVm http://hissi.org/read.php/tech/20170617/cU1rZHJVT1E.html
はいはい、もう君の素性はバレてるよ
はいはい、もう君の素性はバレてるよ
354デフォルトの名無しさん
2017/06/17(土) 23:04:50.91ID:qMkdrUOQ ただ動的型にも良い点があって
「処理系の実装が楽」
しかしこれも実用性を考えて突き詰めていけばJSのV8エンジンのように
加速度的にむしろ大変なことになるというね
とにかく旨みが無い
「処理系の実装が楽」
しかしこれも実用性を考えて突き詰めていけばJSのV8エンジンのように
加速度的にむしろ大変なことになるというね
とにかく旨みが無い
355デフォルトの名無しさん
2017/06/17(土) 23:05:43.09ID:KrWMylVm http://hissi.org/read.php/tech/20170617/cU1rZHJVT1E.html
はいはい、もう君の素性はバレてるよ
はいはい、もう君の素性はバレてるよ
356デフォルトの名無しさん
2017/06/18(日) 00:20:30.41ID:lJ0QohrH LISPみたいに動的型でも宣言ある言語の方がスコープが分かりやすい
357デフォルトの名無しさん
2017/06/18(日) 02:54:31.67ID:MwiRGqjx 動的型付けでダックタイピングみたいに
組みやすくなってるメリットがあるから
実際Ruby以外にもPerl、Python、PHPの
P言語はみんな動的型付けになってる
小規模Webサービスのサーバサイド言語
としての用途には動的型が合ってる
組みやすくなってるメリットがあるから
実際Ruby以外にもPerl、Python、PHPの
P言語はみんな動的型付けになってる
小規模Webサービスのサーバサイド言語
としての用途には動的型が合ってる
358デフォルトの名無しさん
2017/06/18(日) 07:50:58.11ID:ppLsekVC >>357
何か勘違いしてるみたいだけど、ダックタイピングっていうのはオブジェクト指向言語の実装手法の一つで、プログラマにメリットなんかないよ
特にRubyだと多態をダックタイピングに任せるのは嫌われる傾向があって
無意味でも空のメソッドを定義しておいて継承したりするし
何か勘違いしてるみたいだけど、ダックタイピングっていうのはオブジェクト指向言語の実装手法の一つで、プログラマにメリットなんかないよ
特にRubyだと多態をダックタイピングに任せるのは嫌われる傾向があって
無意味でも空のメソッドを定義しておいて継承したりするし
359デフォルトの名無しさん
2017/06/18(日) 08:09:30.26ID:ppLsekVC ちなみに、Rubyでダックタイピングが好まれないのはドキュメントよりもコード読めという文化のせいだと思ってる
ダックタイピングだと「このパラメータにはアヒルを渡してくれ」じゃなくて
「このパラメータにはアヒルのように歩きアヒルのように鳴くものを渡してくれ」といちいちドキュメントに書かなきゃいけない
(静的型になる前の)Pythonはドキュメントを重視する文化だから実際そういうドキュメントの書き方をすることもあるんだけどね
Rubyだとそれを避けるために無意味とわかっていても空のスタブとしてアヒルクラスを定義しておいて「アヒルを渡してくれ」と書くわけ
ダックタイピングだと「このパラメータにはアヒルを渡してくれ」じゃなくて
「このパラメータにはアヒルのように歩きアヒルのように鳴くものを渡してくれ」といちいちドキュメントに書かなきゃいけない
(静的型になる前の)Pythonはドキュメントを重視する文化だから実際そういうドキュメントの書き方をすることもあるんだけどね
Rubyだとそれを避けるために無意味とわかっていても空のスタブとしてアヒルクラスを定義しておいて「アヒルを渡してくれ」と書くわけ
360デフォルトの名無しさん
2017/06/18(日) 08:24:04.22ID:mREyO8+w361デフォルトの名無しさん
2017/06/18(日) 08:29:35.01ID:F94toio2 ダックタイピング任せはメンバの追加がしづらいのも問題
静的型ならインターフェースにメンバを足せばコンパイルエラーになるからエラー箇所を直せばいいが
完全なダックタイピングだと手掛かりがなく修正漏れが発生しやすい
とりあえずスタブを継承させるようにしておけばメソッドを足してもメソッド未定義のエラーにはならない
静的型ならインターフェースにメンバを足せばコンパイルエラーになるからエラー箇所を直せばいいが
完全なダックタイピングだと手掛かりがなく修正漏れが発生しやすい
とりあえずスタブを継承させるようにしておけばメソッドを足してもメソッド未定義のエラーにはならない
362デフォルトの名無しさん
2017/06/18(日) 16:45:30.43ID:xPH4G83l いまさら$とか@とかつけたくないな
363デフォルトの名無しさん
2017/06/18(日) 17:45:55.35ID:MwiRGqjx364デフォルトの名無しさん
2017/06/18(日) 17:56:41.46ID:mREyO8+w Rubyのスクリプトをバックグラウンドで動かすにはどうすれば良いでしょう?
>ruby someScript.rb &
と実行してもTerminal.Appを閉じるとrubyも終了してしまいます。
OSはmacOS Sierraです。
以前、HP-UXで作業して居た時には、xtermを閉じても、logoutしてもバックグラウンドで動き続けてくれました。
launchdとかいうdeamonをコントロールするコマンドがある様なんですけど、これを使って動かさないといけないのでしょうか?
>ruby someScript.rb &
と実行してもTerminal.Appを閉じるとrubyも終了してしまいます。
OSはmacOS Sierraです。
以前、HP-UXで作業して居た時には、xtermを閉じても、logoutしてもバックグラウンドで動き続けてくれました。
launchdとかいうdeamonをコントロールするコマンドがある様なんですけど、これを使って動かさないといけないのでしょうか?
365デフォルトの名無しさん
2017/06/18(日) 18:03:58.53ID:kXxrIi51 tmux使え
366デフォルトの名無しさん
2017/06/18(日) 18:13:50.36ID:mREyO8+w >>365
レスTHX
terminal multiplexerを使えば良いのでしょうか?
someScript.rbを動かすには、someScript.plistを書いて
>launchctl load someScript.plist
ってやるらしいのですが、plistファイルなんて書いた事ないぞぉ。
書き方がよく判らん。
なにか、勘違いしてたら、ご指摘を!
レスTHX
terminal multiplexerを使えば良いのでしょうか?
someScript.rbを動かすには、someScript.plistを書いて
>launchctl load someScript.plist
ってやるらしいのですが、plistファイルなんて書いた事ないぞぉ。
書き方がよく判らん。
なにか、勘違いしてたら、ご指摘を!
367デフォルトの名無しさん
2017/06/18(日) 18:27:18.73ID:mREyO8+w >launchctl load a.plist
/work/a.plist: Invalid property list
property listの書き方がよく判らん。
ただのxmlファイルじゃないのか?コメントの放り込み方が悪いのか?
無効なproperty listだとぉー?
/work/a.plist: Invalid property list
property listの書き方がよく判らん。
ただのxmlファイルじゃないのか?コメントの放り込み方が悪いのか?
無効なproperty listだとぉー?
368デフォルトの名無しさん
2017/06/18(日) 18:38:44.94ID:mREyO8+w やったぁー。動き出しタァ。
Terminal.Appを閉じても動いてる。ふぅー。
Terminal.Appを閉じても動いてる。ふぅー。
369デフォルトの名無しさん
2017/06/18(日) 19:28:18.01ID:mREyO8+w 俺的忘備録
必須key、3つ
<key>Label</key>
<key>ProgramArguments</key>
<key>KeepAlive</key>
3つ目のやつを<true/>にしないとbackgroundで動かん!
さらに、最後のはOnDemand=falseと等価なのだが、
OnDemandはshould not use!だって。
man launchd.plistに詳細が記載。
必須key、3つ
<key>Label</key>
<key>ProgramArguments</key>
<key>KeepAlive</key>
3つ目のやつを<true/>にしないとbackgroundで動かん!
さらに、最後のはOnDemand=falseと等価なのだが、
OnDemandはshould not use!だって。
man launchd.plistに詳細が記載。
370デフォルトの名無しさん
2017/06/18(日) 19:51:32.81ID:mREyO8+w Labelが無いとどうなるんでしょう?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相、トランプ米大統領に「早期に会いたい」 日中関係悪化受け… ★3 [BFU★]
- 小島瑠璃子さん、代表取締役を務める会社を破産申請 [牛丼★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★4 [Hitzeschleier★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- 「残クレ」でマイホーム、国が銀行向け保険 新型住宅ローン普及促す -日経 ★3 [少考さん★]
- 高市早苗首相が天理教系企業に“巨額発注” 総額5000万円 本人は「政治団体の活動に必要な支出」と回答 [Hitzeschleier★]
- 【安倍晋三】中国船4隻が領海侵入 [828897501]
- 高市早苗「議員定数削減法案の詳細?お答えできません」 [834922174]
- 【実況】博衣こよりのえちえちスーパーダンガンロンパ3🧪
- お前ら不味いカレーに出会ったことある?
- 今の時勢だからこそできる賢く稼げる方法を教えてやるよwww
- えちえち女だけど
