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


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

Ruby 初心者スレッド Part 62



1 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 00:35:29.31 ID:rLZHdQ3Q.net]
プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
Ruby on RailsについてはWEBプログラミング板で

前スレ
Ruby 初心者スレッド Part 61
https://mevius.5ch.net/test/read.cgi/tech/1503644351/

るりまサーチ (リファレンス検索)
rurema.clear-code.com/

Rubyist Magazine - るびま
jp.rubyist.net/magazine/

逆引きRuby
www.namaraii.com/rubytips/

252 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 21:03:22.23 ID:/arVeZ+Z.net]
ライブラリの話をすんなってうるさいアイツのことだなw
同一人物でなければ、荒らしの脳内構造は一緒ってことなんだろう
スレと関係ない話しかしない

俺はもちろんスレと関係ある話をした

253 名前:デフォルトの名無しさん [2017/12/09(土) 21:17:18.85 ID:ECkYCn8N.net]
ごめん、223が荒らしだったわ

254 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 21:24:17.46 ID:/arVeZ+Z.net]
何度も言わなくてもいいよ
お前ぐらいしかそんなこと言ってない
何度も言っても、こうしてバラされたら効果ゼロ

235 名前:デフォルトの名無しさん[] 投稿日:2017/12/09(土) 20:32:50.99 ID:ECkYCn8N [1/3]
>>232
お前のギャグさいこーwwwww

240 名前:デフォルトの名無しさん[] 投稿日:2017/12/09(土) 20:49:36.99 ID:ECkYCn8N [2/3]
223が自演できるのは書き込み時間からわかったけど
荒らしてたのは本当にこいつなの?

244 名前:デフォルトの名無しさん[] 投稿日:2017/12/09(土) 21:17:18.85 ID:ECkYCn8N [3/3]
ごめん、223が荒らしだったわ

255 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 21:49:29.83 ID:KAnpleQL.net]
せいぜい20レス/日のこのスレで彼は今も我らのために見えない敵と戦ってらっしゃるのだ
以下テンプレにいくつか追加

>粘着する荒らしがスレを何ヶ月も荒らしたため、
>ネガキャン、逸脱した連投、荒らし行為を行う人がいた場合は対策としてruby-listやruby-devへ誘導するようにお願いします
>自演でIDを変えて荒らしを繰り返すため、加勢するIDも含めて誘導するようお願いします
>
>荒らしはruby-listやruby-devを追い出されたため現在、出入り禁止になっています
>そのため過去、誘導されると逃げ回った経過があるので、コミュニティで発言を確認するまで誘導してください

256 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 22:18:52.50 ID:HCMuc4Gp.net]
俺は極たま〜〜に静的型どうのこうのの長文を書き込むことがあるぐらいで
言うほど連続投稿しないし、毎日書き込んだりしないし、チラ裏の日記みたいな感じで
特にここ最近半月ほどはスレが荒れていたこともあって何も書き込まないようにしてたんだが
過剰に反応して何にでも荒らし認定する一部のアレな人が全然関係ない人を攻撃していて
攻撃された人は気の毒だなぁとか思いながら、変なことになってるなぁと傍観していたんだが
その流れがあまりにもアレすぎたのか、いよいよ本物が居付いてしまったようだけど
自業自得とはいえ残念なことだな
他の真っ当な住人からしたら随分迷惑なことだろうし、俺も嫌かなぁ

結果的には俺の書き込みに過剰に反応する必要は無かったし
元々荒らしと言われるほど、ひどい内容や投稿スタイルではなかったはずなんだが
(ここが何処かを考えれば、通常、それぐらいは普通にあり得るかなぁという範囲)
実際には過剰反応している奴が意味のない書き込みで一番このスレを荒らしていたし
そのことは他の住人からもちょくちょく指摘が入ってたと思うんだがねぇ
というか、そのあいだ俺は書き込んでなかったんだが・・・しかしまぁ結果的にこの事態だわ

俺も勉強になって、自分たちに都合の悪い事実を、荒らし認定などで黙殺しようとしても
事実を黙殺する歪のようなもので、もっと酷いことになるんだな
嘘が雪だるま式に広がって〜とよく似ている
こういうときは沈黙は金だね

257 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 22:23:27.43 ID:fpEjaZID.net]
スレの終末感がまさにRubyの現状を象徴しているかのようだな

258 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 22:25:40.22 ID:jtqcr+t2.net]
悪貨が良貨を駆逐するってやつだ
良心的なやつがここにいても
アホが次から次に湧いてくるから
心がおられる。

そしてgoとかPythonとかkotolinとかにいってしまう。

259 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 22:26:53.94 ID:/arVeZ+Z.net]
> そしてgoとかPythonとかkotolinとかにいってしまう。

それこそまさに悪貨が良貨を駆逐するってやつだな
今他の何かを駆逐して生き残ってるやつは全部悪貨なんだよ!

260 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 22:28:02.68 ID:/arVeZ+Z.net]
悪貨が良貨を

シリア軍、北部でISIS駆逐の作戦開始 空港を奪還
https://www.cnn.co.jp/world/35073425.html



261 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 23:10:08.11 ID:PLdtTEIG.net]
NGワードになったんでideoneにIDを列挙しておくけど
https://ideone.com/sMHbO4
ID:/arVeZ+Zを誹謗する48個のレスはID:JRYZIrF0を除いて全部のIDがほぼ単発かつ、単発でないものは全て安価がかぶらない
全部ID:JRYZIrF0が自演してることはほぼ明らか
こいつ病気なんじゃねえの
このスレの癌だよ

262 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 23:25:49.93 ID:/arVeZ+Z.net]
乙w

263 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 23:30:09.58 ID:lAUVYRHS.net]
Setクラスってどういうときに使いますか?

Arrayクラスインスタンスにuniqかけて集合だと考えてたけど違うのではと思ったもので。

264 名前:デフォルトの名無しさん [2017/12/09(土) 23:58:52.32 ID:JRYZIrF0.net]
ここまで自演
----------------------------

265 名前:デフォルトの名無しさん mailto:sage [2017/12/09(土) 23:59:53.67 ID:/arVeZ+Z.net]
あ、日付が変わるw

266 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 00:00:06.57 ID:ML6lMJWk.net]
変わったーw

267 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 00:02:47.92 ID:nDrrD3Ex.net]
あーあ、これでruby-listかruby-devで発言せず逃げ回ったことが確定しちゃった

268 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 00:17:50.29 ID:MJKB1Uts.net]
ruby-devでリテラルの最適化の話がずっとあるけど、
やっぱ、ArrayもStringみたいになるのかな?

269 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 00:32:18.71 ID:/jbkU8iJ.net]
>>254
uniq だと O(n) かかるので
Set だとハッシュを使っているだろうから O(1) でいけるんじゃないかな

270 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 00:37:16.10 ID:fgyE63pk.net]
>>259
3の型付けなんて最適化や速度upで入れたいって言ってるわけでなぶんそうなるだろ
ruby-listでfrozen_string_literal前提の話とかちょろちょろ見るようになったし

型そのものはあんまり興味ない
希望の書き方とかる



271 名前: []
[ここ壊れてます]

272 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 00:38:47.43 ID:fgyE63pk.net]
タイプミスった、ごめん

>>259
3の型付けなんて最適化や速度upで入れたいって言ってるわけでなぶんそうなるだろ
ruby-listでfrozen_string_literal前提の話とかちょろちょろ見るようになったし

型そのものはあんまり興味ない
希望の書き方とかる? -> 希望の書き方とかある?

273 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 00:50:55.71 ID:MJKB1Uts.net]
あんまりイメージわかないけど、可能なら型をrubyの文法のif文とかメソッドチェーンに組み込みたい

一度、ここでアンケとってruby-listで型の希望の書き方とか立ててみる?

274 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 01:14:35.57 ID:XVX0tsBl.net]
ruby-listに直でアンケとっても良いけど
荒らしもいなくなった様だからやってっみる?

275 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 01:28:00.42 ID:ML6lMJWk.net]
なんか番号とんでるけど、まだあの荒らしいるのかw

276 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 01:40:44.61 ID:ZzgYAKrD.net]
投稿時はruby-listかruby-devのどちら向けの話題なのかワードを入れておく?

x : Integer
は、ありきたりというか仮引数の時ハッシュと間違いやすいだろ
繋げて書けるように
Integer =_ x = nil
みたいなのどうよ

277 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 01:44:56.11 ID:nRE+Ifdg.net]
元々、荒らしは、全部のスレで、いちゃもんを付けてくる。
漏れも、何回も攻撃されてる

単発ID で「間違ったこと書き込むな」とか、荒らしが書き込むと、
すぐに違うID で「そうだよな」みたいに、荒らしに同調するレスが付く。
深夜でもそうだから、荒らしに同調する奴が居るなんて、あり得ない

プログラミングの話は、一切できないくせに、批判ばっかり書いてるのが荒らし

ただ、Ruby, JavaScript のスレでは、
荒らしにかまうから、喜んで居着いてるだけ

荒らしは一切、無視すべし!
仕事をした事もない奴と、話をしても仕方がない

278 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 01:49:21.28 ID:nRE+Ifdg.net]
スレに、ワッチョイが無いから、荒らしが来る

ワッチョイを導入すれば良い。
そうすれば、自演できない

279 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 01:50:52.64 ID:fgyE63pk.net]
自演できる荒らしが喜びそうだから却下

280 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 01:55:18.69 ID:ZzgYAKrD.net]
>>268
おい、スレの進行を妨害するなよ
おまえ荒らしか?



281 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 01:57:14.83 ID:8z/4vDLR.net]
荒らされてると聞いてきたら型の話してる…
しばらく界隈から離れてたら静的型付け実装か

282 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 01:58:55.58 ID:fgyE63pk.net]
=_ ←これ何?
ruby-listで受けんのこれ?
どう見ても無理っぽい

283 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 02:12:19.13 ID:ZzgYAKrD.net]
いや、自分の希望の書き方なんだから人気のある書き方でなくても良いでしょ
それにもしかしたらruby-listで大人気になるかもしれないし

後、さっき思いついたけど
definedtype?( Type )
みたいなのどう?

284 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 02:28:55.59 ID:9Zlb3ltO.net]
なんで型の希望の話になってんの?

すまんが今来て、この1スレからさらっと読んだけど理解できんかった。

とりあず、このスレからruby-listに要望だずにしても
下記まとめなんかあるといいかも(オレがほしいw
・経緯
・メリット
・デメリット
・他の言語の場合、例

OOP言語で簡単なのがrubyの良いところだと思う。

285 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 02:32:48.91 ID:8I95hEEE.net]
簡単ではないだろ
Rubyはとんでもなく複雑な言語で、メジャーな言語の中だとC++の次くらいには複雑なんじゃないの
ちなみにRubyが複雑なのはMatzも認めてるよ

286 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 02:39:29.90 ID:ZzgYAKrD.net]
スレ進行を妨害するなよ荒らし
失せろ

287 名前:デフォルトの名無しさん [2017/12/10(日) 02:57:07.13 ID:UtvIbdgM.net]
荒らしがそろそろ暴るだろうから今のうちにテンプレを張っておく

>粘着する荒らしがスレを何ヶ月も荒らしたため、
>ネガキャン、逸脱した連投、荒らし行為を行う人がいた場合は対策としてruby-listやruby-devへ誘導するようにお願いします
>自演でIDを変えて荒らしを繰り返すため、加勢するIDも含めて誘導するようお願いします
>
>荒らしはruby-listやruby-devを追い出されたため現在、出入り禁止になっています
>そのため過去、誘導されると逃げ回った経過があるので、コミュニティで発言を確認するまで誘導してください

288 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 03:21:46.15 ID:1HHF8E2/.net]
ruby-listだと恥ずかしくて聞きにくいのでこちらで質問します

a = [[1,2,3],nil, 4..10]
a.include?(5) => false
これで、trueにならないのはどうしてですか?

289 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 03:27:29.16 ID:FZ4Yj2IT.net]
>>274
そうだな
RubyはOOPで一番簡単な言語だと思う

>>275
むしろメジャーな言語の中で
一番シンプルだと思う
たとえばJavaScriptの方が複雑

290 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 03:44:33.44 ID:UMP8yhyZ.net]
>>278
a.include?(5) を小さく噛み砕くと以下になる
([1,2,3] == 5) || (nil == 5) || ((4..10) == 10)
これがtrueにならない理由


>>279
お前、まだ居るんか?
とっとろ消えろ



291 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 04:36:57.56 ID:rydPLt/1.net]
荒らしの連投が収まったからか、昨日、一昨日の書き込みに比べてえらく穏やかになったな
マジruby-list様々

292 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 04:56:13.97 ID:fgyE63pk.net]
>>278
Ruby2.4 リファレンスより
include?(val) -> bool
配列が val と == で等しい要素を持つ時に真を返します。

荒らしよけruby-list

293 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 05:52:58.55 ID:nRE+Ifdg.net]
荒らしは、色んなスレに、いちゃもんを付けてる。
JavaScript, Ruby のスレだけではなく、全部のスレを荒らしてる

荒らしは、仕事をした事がないから、反応するものには、何にでも噛みつくだけ

徹底的に、無視した方が良い

294 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 06:18:10.98 ID:rydPLt/1.net]
失せろ
スレの進行の妨害を繰り返す荒らしが

295 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 08:42:40.84 ID:KNXh5gp+.net]
rubyで型を書けるようになったとしても、コメントにアノテーションとして書けるようにするくらいが無難だろうて

296 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 16:46:51.98 ID:IY8S1+HK.net]
荒らしはあぼーんはずして見に来てるくせに、
毎回の見えてないアピールが糞うざい

297 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 19:04:47.93 ID:4uyVh43l.net]
メソッドの引数、戻り値の型保証を目的としたgems
* contracts
* rubype
他にも色々あるけど触ったことがあるのはこのくらいだな

298 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 19:37:14.48 ID:0VP/mrFZ.net]
https://github.com/plum-umd/rdl
https://github.com/soutaro/steep

299 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 20:23:20.11 ID:fgyE63pk.net]
古典はクラス=型だけど、
rubyではどうなるんだろ

300 名前:デフォルトの名無しさん [2017/12/10(日) 22:15:37.82 ID:TsNv+js2.net]
型システムに関する最新の教科書であるTAPL本だとクラス=型だけど、
TAPL本を古典と言い切ってしまえる>>289は異次元世界の住人なのかな?



301 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 22:24:25.24 ID:ML6lMJWk.net]
TAPL本を古典なんてどこにも書いてないんだが?

なに一人連想ゲームしてんの?

302 名前:デフォルトの名無しさん mailto:sage [2017/12/10(日) 23:46:36.31 ID:EJLWoC7C.net]
型チェックってどうして望まれてるの?
Kernel#instans_of? とか Module#=== を使って
TypeErrorを投げればいいんじゃないのと初心者としては思うんだけど、誰か教えて><

303 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 00:11:37.08 ID:toSfFiY3.net]
>ruby-devはrubyの開発者のためだから場所が正しくない
>Ruby初心者の質問と回答はここしかないな

みたいなカン違いししてるのでなければruby-devで聞きなよ

304 名前:デフォルトの名無しさん [2017/12/11(月) 00:22:43.20 ID:zjLRjNAe.net]
結局、荒らしはrubyコミュで発言せず逃げたままか
ruby-listやruby-devでいったい何をしでかしたんだアイツ?

305 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 00:32:30.84 ID:Iio3nuGz.net]
>>1のテンプレ見て思ったんだけど、
各Rubyコミュへの案内も入れた方が良いんじゃないか?
ruby-listとruby-devとruby-core辺りでいいからさ

306 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 00:45:28.12 ID:3l4LlxuK.net]
>>292
大規模プログラミング症候群に患わった人たちがおもに困ってる

それとinstans_of?とかModule#===とかが目立つのはRubyらしくない
引数として与えられたオブジェクトは必要なメソッドがあるものとして記述する方がいい (ダックタイピング

307 名前:)
ifやcaseでやたらとクラス名が出てくるべきじゃない
こういう振り分け処理はrefinmentできれいに分離できるし何より見通しが良くなる

case obj
when nil
  ...
when Integer
  ...
when ...
  ...
else
  raise TypeError
end

これはrefinmentと組み合わせれば

obj.do_it

だけで済むし分岐のための Module#=== が呼ばれなくなるから処理速度も悪くならないはず

特に似たような処理が散乱して困るようならば検討するべき
[]
[ここ壊れてます]

308 名前:デフォルトの名無しさん [2017/12/11(月) 00:54:42.06 ID:zjLRjNAe.net]
ruby-coreは英語だけどいいのか?

309 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 01:33:14.94 ID:4q7JrCp0.net]
switch 文で、型によって分岐していたら、オブジェクト指向ではない。
多くは、設計の間違い

型が増えるたびに、switch 文を修正しないといけなくなる

修正の度に、設定ファイルを書いているデザイナーが、
プログラマーに頼まなければならなくなるから、

プロジェクトの人材配分ができなくなる

310 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 02:02:26.81 ID:b197wXfn.net]
自演うざいな



311 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 03:05:20.05 ID:cnSlApZQ.net]
型はなくていいけど、宣言していない変数は使えないようなオプション欲しい

312 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 03:18:06.40 ID:329kYh7O.net]
ruby-listやruby-devへの案内テンプレどうしますか?

313 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 12:55:19.76 ID:Y2G40Toz.net]
>>301
基地外を誘導するのは迷惑だからやめなさい

314 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 17:28:47.01 ID:Iio3nuGz.net]
自演を繰り返してる奴はruby-listやruby-devを避けてるから問題ない
そもそも入る事が出来ないらしい
それで、どういうテンプレにする?

315 名前:デフォルトの名無しさん [2017/12/12(火) 00:09:35.42 ID:MTvcfECB.net]
ruby-devやruby-core入れるだけで荒らし避けになるとかスゲー
とりあずテンプレ案を出すのは次スレ立てる直前でどうよ?

316 名前:デフォルトの名無しさん mailto:sagge [2017/12/13(水) 02:24:54.64 ID:bN1wPs8n.net]
Methodのsource_locationみたいなソースの定義や構造の解析に役立つメソッドを探しているけど、
Classやモジュール、オブジェクトにはこういったメソッドないよね?

あれば便利だと思うのに

317 名前:デフォルトの名無しさん mailto:sage [2017/12/13(水) 05:18:23.32 ID:wC6gbn87.net]
>>305
Pryの show-doc と show-source 便利だよ
pry-docも合わせて使えばCで書かれた組み込みクラスやメソッドのソースも表示可能

318 名前:デフォルトの名無しさん mailto:sage [2017/12/14(木) 01:05:44.67 ID:RXlgLxSu.net]
Methodのsource_locationは処理に直接挿入できるから便利なのであって、
そこを理解していないだろ

319 名前:デフォルトの名無しさん [2017/12/15(金) 01:34:17.23 ID:XFw1hYkv.net]
Rubyコードのリファクタリングに関したgemってある?
結構前にリファクタリングのrubyエディションを読んでから興味持ったんだけど

320 名前:デフォルトの名無しさん mailto:sage [2017/12/15(金) 07:40:23.15 ID:qyzTygXP.net]
原理的に困難って上で言われてるでしょ
こればっかりは個人の信条や宗教の問題じゃなく本当に原理的な問題だから諦めろ
Rubyのリファクタリングや型検査に関しては、無理に静的解析するんじゃなくて、
実際にモジュールをロードしてみて実行時のクラス構造を見て処理するような新しい発想が必要だと思うわ



321 名前:デフォルトの名無しさん mailto:sage [2017/12/15(金) 13:34:32.77 ID:AXI+pgWQ.net]
>>309
>リファクタリング:Rubyエディション、2010
を読むまでは俺もお前と同じ勘違いをしてた
どのような言語でもテクニックとしてリファクタリングが出来るという事が書いてあるから一度読め
特にrubyは、その記述性からリファクタリングテクニックがぴったり合う

322 名前:デフォルトの名無しさん mailto:sage [2017/12/15(金) 16:34:51.13 ID:YAkY+eE5.net]
>>310
できるかどうかでいえばできるでしょ
正しさを保証できないだけ

323 名前:デフォルトの名無しさん mailto:sage [2017/12/15(金) 22:04:52.20 ID:AXI+pgWQ.net]
リファクタリングテクニックを適用するだけの事に、

324 名前:ウしさの保障とか難癖つけても無駄
俺も以前は、カン違いしていた口だから偉そうな事は言えないけど
[]
[ここ壊れてます]

325 名前:デフォルトの名無しさん [2017/12/15(金) 23:07:30.00 ID:XFw1hYkv.net]
>>309
Rubyにリファクタリングが合わないならリファクタリングrubyエディションなんて書籍は出版されないのでは?
内容も、何も考えなくても機械的に適用すればリファクタリングが出来てしまうテクニック集の例示だし

それと故意に話しを摩り替えられたけど聞きたかったのはリファクタリング関連のgemの事

326 名前:デフォルトの名無しさん mailto:sage [2017/12/16(土) 00:12:00.58 ID:8dq3CMaj.net]
Rubyってどこまでできたら初心者卒業って言っていいの?

327 名前:デフォルトの名無しさん mailto:sage [2017/12/16(土) 01:17:58.42 ID:txM0o0nR.net]
配列とループが理解できたら

328 名前:デフォルトの名無しさん mailto:sage [2017/12/16(土) 01:25:30.77 ID:plaGBrRo.net]
なんかできるできないの話に持っていって(持って行かれて?)
負けてるやつがいるなw

Rubyでもなんでもリファクタリングはできるよ。
ただ同じリファクタリングをしても時間がかかる言語と
そうでない言語があるって話

329 名前:デフォルトの名無しさん mailto:sage [2017/12/16(土) 01:59:08.24 ID:SSRXngMG.net]
>>313
こんなにRuby信者が寄ってきてるのに何一つ出てこないことが何よりの答えだろうね
そもそもRubyってツールでコードを弄るのをダサいと考える文化があるのよ
コードを生成するくらいならメタプログラミングで実行時に何とかするべきだし、
ツールで機械的に適用できるような局所的なリファクタリングなら手でやったほうが早い、っていうのがRuby的な思考
静的言語のIDEに付いてるようなインターフェイスの抽出とかメンバのリネームといった広域的なリファクタリングは便利なものだけど、
ああいうのは実際「原理的に困難」なので

330 名前:デフォルトの名無しさん [2017/12/16(土) 05:32:22.64 ID:2bqvN76b.net]
>>316
>>317
ネガキャン失敗して顔真っ赤にしながらレスを書いていると思うと最高



331 名前:デフォルトの名無しさん mailto:sage [2017/12/16(土) 14:05:47.39 ID:VgVQwchc.net]
有能なRubyistである>>318がパッと作ってgithubのURL貼ればそれで済む話だぞ
Matzもコードで語れっていつも言ってるでしょ

332 名前:デフォルトの名無しさん mailto:sage [2017/12/16(土) 22:18:04.71 ID:SV1ui7/W.net]
>>319
逃げ回っていないでruby-devかruby-listで発言して来いよ

333 名前:デフォルトの名無しさん mailto:sage [2017/12/16(土) 23:26:30.07 ID:RIeUS8wT.net]
リファクタリングと言えばrubyでRipper使えばコードを構文木化して扱えるよ
だから処理系自身にrubyコードを書き換えさせる事も出来る
それからgemもparseなんちゃらみたいなのが結構出てくるから割とありきたりなネタ

知ったかで騙ってる荒らしだけが無知を披露中

334 名前:デフォルトの名無しさん mailto:sage [2017/12/16(土) 23:40:22.84 ID:Ek1/YNvL.net]
文脈がわかるわけじゃないからちょっと無理があるけど

335 名前:デフォルトの名無しさん [2017/12/16(土) 23:47:36.74 ID:2bqvN76b.net]
またまたネガキャン大失敗の巻きか?
プゲラッチョ

336 名前:デフォルトの名無しさん mailto:sage [2017/12/16(土) 23:58:10.67 ID:VgVQwchc.net]
構文木ってソースコードのDOMでしかないからなあ
>>322も言ってるけどそれでコードの意味がわかるわけじゃない
しかもRubyのASTの場合、静的解析やコード生成ではなく実行することしか考慮されてなくて、
CALLとシンボルだらけで大幅に情報が失われてる
自分でやってみりゃわかるけどかなり扱いづらい代物だよ

337 名前:デフォルトの名無しさん [2017/12/16(土) 23:59:37.87 ID:2deUmEBo.net]
--dump=parsetreeオプションか、--dump=insnsオプションで使わないの?

338 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 00:12:46.78 ID:cjnEvY5x.net]
>>325
dump=parsetreeの結果から元のソースを復元してみ
無理だから

339 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 00:23:33.21 ID:ZaumiUQl.net]
使いづらいって言われてもそれは主観でしかないよな?
しかも実質、リファクタリング関連のgemを製作する側がどうのこうのであって、
gem利用者には関係なくない?

そもそも他言語での自己書き換えの扱いはもっと

340 名前:やっかいだぞ? []
[ここ壊れてます]



341 名前:326 mailto:sage [2017/12/17(日) 00:23:43.41 ID:cjnEvY5x.net]
一応補足しとくけど、ruby処理系にそういう機能があるかどうかじゃなくて
dump=parsetreeで出力されたASTから元のソースを復元するツールを作ってみてくれ、という意味だぞ
ちなみにripperでも同じだ
もちろん細かいスペースの差異とかは無視するとしても、不可能なのがわかるよ
リファクタリングや静的解析に使うなら処理系付属のは使い物にならないので専用のASTが絶対に必要だ

342 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 00:29:01.32 ID:ZaumiUQl.net]
構文木と並行して字句解析つかえば何も問題ないぞ
というか、そういうgemがごろごろあるぞ?

また知ったかしちゃったのかな?

343 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 00:34:09.11 ID:cjnEvY5x.net]
>>329
意味不明だなあ
字句解析の結果をどうやってASTに紐付けるの?
結局独自に構文解析するんなら、それはつまり「専用のASTが必要」ということになるわけだけど、
自分で言ってること理解してる?

344 名前:デフォルトの名無しさん [2017/12/17(日) 00:40:42.77 ID:X5PuZ6e5.net]
荒らしはrubyでリファクタリング出来る事が物凄く不満らしいけど、親でも殺されたのか?
これでも読んで落ち着け
つリファクタリング:Rubyエディション、2010

345 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 00:51:54.13 ID:ZaumiUQl.net]
>>330
だからgemがごろごろあるだろ
現実に存在するgemを否定しても現実は変わらんぞ?

そもそも妄想を騙るならruby-devかruby-listで発言しろ
ここはおまえの妄想ノートじゃねよボケ

346 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 00:52:55.58 ID:Hi83U6qj.net]
リファクタリングはどの言語でもできる
ただやりにくい言語とそうでない言語が有る
Rubyはやりにくい。時間がかかる

347 名前:デフォルトの名無しさん [2017/12/17(日) 00:55:41.57 ID:X5PuZ6e5.net]
>>333
自演ばれてんぞ

348 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 00:56:47.47 ID:Hi83U6qj.net]
誰と間違ってんだよw

349 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 01:01:05.21 ID:ZaumiUQl.net]
いや、まちがっていない
こいつはいつもの粘着荒らしだ

350 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 01:05:40.92 ID:vwVDXOLh.net]
俺には>>336もプロレスの自演に見えるけどね
批判的意見に毎回バカっぽく突っかかって論破されてる噛ませ役



351 名前:デフォルトの名無しさん [2017/12/17(日) 01:06:56.15 ID:X5PuZ6e5.net]
>>337
も自演か

352 名前:sage [2017/12/17(日) 01:22:18.66 ID:bfi3jyev.net]
リファクタリングって頭空っぽにして代数的に適用すれば安全にコードを変えられるテクニックの事だろ?
なんで時間がかかるとか難しいとか話しが出てるんだ?






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

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

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