プログラミング言語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
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が無いとどうなるんでしょう?
371デフォルトの名無しさん
2017/06/18(日) 19:54:50.51ID:mREyO8+w Invalid or missing service identifier
372デフォルトの名無しさん
2017/06/18(日) 20:02:09.12ID:mREyO8+w さて、stdoutはどうやって拾うのだ?
373デフォルトの名無しさん
2017/06/18(日) 20:13:05.46ID:mREyO8+w man lauchd.plist
して/stdout
すれば出て来た。
して/stdout
すれば出て来た。
374デフォルトの名無しさん
2017/06/18(日) 22:47:06.74ID:o43mtcr6 >>364-368
Linux では、プロセス間に親子関係がある。
端末から、Aプロセスを起動すれば、端末が親で、Aが子
「親亀こけたら、子亀もこける」から、端末が終了すると、Aも終了する。
端末から、SSHで、リモートサーバーへアクセスしても、
接続断などで、リモートのシェルが終了すると、
シェルから起動したコマンドも終了してしまう
リモートで、tmux をずっと起動させておけば、コマンドは動き続ける
他には、サービス・デーモンのように、プロセスの親をなくす(デーモン化)
ptree コマンドで、プロセスツリーを見てみ
Linux では、プロセス間に親子関係がある。
端末から、Aプロセスを起動すれば、端末が親で、Aが子
「親亀こけたら、子亀もこける」から、端末が終了すると、Aも終了する。
端末から、SSHで、リモートサーバーへアクセスしても、
接続断などで、リモートのシェルが終了すると、
シェルから起動したコマンドも終了してしまう
リモートで、tmux をずっと起動させておけば、コマンドは動き続ける
他には、サービス・デーモンのように、プロセスの親をなくす(デーモン化)
ptree コマンドで、プロセスツリーを見てみ
375デフォルトの名無しさん
2017/06/19(月) 00:00:57.99ID:7PGcweVa376デフォルトの名無しさん
2017/06/19(月) 09:53:11.25ID:JRZAs/i8377デフォルトの名無しさん
2017/06/19(月) 09:56:20.02ID:rtjcKsU2 >>376
それやっても親子関係が残るからだめだっつってるのに文盲か?
それやっても親子関係が残るからだめだっつってるのに文盲か?
378デフォルトの名無しさん
2017/06/19(月) 10:00:51.58ID:zE2VOzv5379デフォルトの名無しさん
2017/06/20(火) 00:23:19.32ID:8wgIueO/ pstree コマンドで、プロセスの親子関係をツリー表示して、見てみれば?
結局、Ruby を学んでも、OS を学んでいなければ、
システム系のプログラミングは出来ない
だから普通、プログラマーよりも、LPIC資格を持っている、
サーバー構築・運用者の方が、給料が高い
結局、Ruby を学んでも、OS を学んでいなければ、
システム系のプログラミングは出来ない
だから普通、プログラマーよりも、LPIC資格を持っている、
サーバー構築・運用者の方が、給料が高い
380デフォルトの名無しさん
2017/06/20(火) 00:54:05.18ID:uMblZ3Am × システム系のプログラミング
○ 運用系のプログラミング
○ 運用系のプログラミング
381デフォルトの名無しさん
2017/06/20(火) 08:29:32.89ID:rapwcYHc382デフォルトの名無しさん
2017/06/20(火) 10:01:32.57ID:8wgIueO/ まあ、プログラマーで、プロセスに親子関係があるとか、
cron の使い方とか、tmux とか、知っている奴はいない
cron あるあるとか、SSH あるあるとか、Linuxでは定番
cron の使い方とか、tmux とか、知っている奴はいない
cron あるあるとか、SSH あるあるとか、Linuxでは定番
383デフォルトの名無しさん
2017/06/20(火) 10:41:15.76ID:rapwcYHc >>382
プロセスに親子関係がある。コマンド実行時にshellがforkされるのは知ってたんだけど。。。
以前はnohupなんて使わなくても、
>someCommand &
とすれば
>nohup comeCommand &
した事になったのに!
いつから、nohupなんて現れたのだ?
プロセスに親子関係がある。コマンド実行時にshellがforkされるのは知ってたんだけど。。。
以前はnohupなんて使わなくても、
>someCommand &
とすれば
>nohup comeCommand &
した事になったのに!
いつから、nohupなんて現れたのだ?
384デフォルトの名無しさん
2017/06/20(火) 10:45:41.82ID:rapwcYHc どうやらbashは終了時に起動したプロセスにSIGNHUPを送るらしい。
俺が昔使って居た、csh, tcshではそんな事はなかったのに!
時代は変わったんだな。
俺が昔使って居た、csh, tcshではそんな事はなかったのに!
時代は変わったんだな。
385デフォルトの名無しさん
2017/06/20(火) 12:38:36.99ID:5s5M5H6z386デフォルトの名無しさん
2017/06/20(火) 12:39:25.49ID:5s5M5H6z387デフォルトの名無しさん
2017/06/20(火) 12:51:49.38ID:rapwcYHc zshってのが便利だってのを、webの記事でよく見るけど、
どうなん?
bashが糞なら、zshを使って見るかな。
zshもbashの親戚みたいな動きをするなら、zshも糞って事になるけど。
どうなん?
bashが糞なら、zshを使って見るかな。
zshもbashの親戚みたいな動きをするなら、zshも糞って事になるけど。
388デフォルトの名無しさん
2017/06/20(火) 13:51:30.44ID:DOO3yEYl >>387
zsh もデフォの振る舞いは bash とおなじ。
設定で setopt nohup すれば、hup 送らなくなる。
bash でも huponexit オプション外せば送らなくなる。
ソフトウェアのマニュアルも読まずに糞とか言うのは、
自分は所詮そのレベルの人間ですと言ってるようにしか聞こえないよ。
zsh もデフォの振る舞いは bash とおなじ。
設定で setopt nohup すれば、hup 送らなくなる。
bash でも huponexit オプション外せば送らなくなる。
ソフトウェアのマニュアルも読まずに糞とか言うのは、
自分は所詮そのレベルの人間ですと言ってるようにしか聞こえないよ。
389デフォルトの名無しさん
2017/06/20(火) 13:59:24.54ID:rapwcYHc■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相、トランプ米大統領に「早期に会いたい」 日中関係悪化受け… ★3 [BFU★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★5 [Hitzeschleier★]
- 小島瑠璃子さん、代表取締役を務める会社を破産申請 [牛丼★]
- 「残クレ」でマイホーム、国が銀行向け保険 新型住宅ローン普及促す -日経 ★3 [少考さん★]
- 【サッカー】日本代表、FIFAランキング“4位”の強豪イングランドとの対戦が正式決定! 来年3月に聖地ウェンブリーで激突へ [久太郎★]
- 【実況】博衣こよりのえちえちスーパーダンガンロンパ4🧪
- 【すこん部🏡】白上フブキ🦊配信中❗【ホロライブ▶】
- 近所にびっくりドンキーがないんだけど!!!
- 【安倍晋三】中国船4隻が領海侵入 [828897501]
- 自民党、ついに「断続的なレーダー照射」に発言後退。ネトウヨどうすんのこれ? [469534301]
- 現役JKのお茶会スレ( ¨̮ )︎︎𖠚ᐝ181
