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


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

Ruby 初心者スレッド Part 63



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

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

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

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

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

369 名前:デフォルトの名無しさん mailto:sage [2018/07/11(水) 09:33:52.70 ID:l7TCKUBX.net]
sinatraでグローバルで変数を定義してもリクエストの度に初期化されてしまうんですが
値を保存し続ける方法はないでしょうか?

370 名前:デフォルトの名無しさん mailto:sage [2018/07/11(水) 10:11:19.06 ID:lydt4eTq.net]
シナトラのシナをぐーるぐるとって
シナトラのシナをぐーるぐるとって
シロトラにつけたらシマトラ! 👀
Rock54: Caution(BBR-MD5:1341adc37120578f18dba9451e6c8c3b)


371 名前:デフォルトの名無しさん mailto:sage [2018/07/11(水) 12:33:41.39 ID:I//Y0R5O.net]
よく知らないけど、OS の環境変数とか、

sinatra や各アプリの設定ファイル・Database とか

372 名前:デフォルトの名無しさん mailto:sage [2018/07/11(水) 13:14:11.39 ID:I//Y0R5O.net]
System.getProperty("line.separator")
System.lineSeparator() //JDK1.7

System.out.printf("あ%nい");

Java では、OS に依存しない改行コードを、これで表せるけど、
Ruby ではどうやるの?

Windowsでは”\r\n”、UNIX系では”\n”

373 名前:デフォルトの名無しさん mailto:sage [2018/07/11(水) 13:22:47.14 ID:L0DC21ns.net]
そんなものは必要ない。
なぜならRubyはUNIXに強く依存しておりUNIX以外で使うことが想定されていないから。
こんなことを言うと被差別ドザ民はRubyInstallerがあると反論するかもしれないが、RubyInstallerはMSYSを使っておりUNIXを内包している。

374 名前:デフォルトの名無しさん mailto:sage [2018/07/11(水) 13:28:48.60 ID:sci4nRck.net]
RubyがWinとGUIへの親和性が低いのが
ランキング上位言語に勝てなかった要因のひとつ

375 名前:デフォルトの名無しさん mailto:sage [2018/07/11(水) 14:12:41.83 ID:WVMUi+h8 ]
[ここ壊れてます]

376 名前:.net mailto: Windowsならファイルをテキストモードで開けば勝手にCRLFになるでしょ []
[ここ壊れてます]

377 名前:デフォルトの名無しさん [2018/07/11(水) 14:43:43.88 ID:niqZSUUp.net]
逆に、Pythonだと問答無用でCRLFになって、LFで統一したいと思うとめんどくさくなる。
Javaの様にどっちでも簡単にできる方がいい。



378 名前:デフォルトの名無しさん [2018/07/11(水) 15:15:24.15 ID:Zqsgthqv.net]
おい、Rubyスレから出てくるなよ
何しれっとIP切替えて他スレに書き込んでるんだ

379 名前:デフォルトの名無しさん [2018/07/11(水) 17:36:52.81 ID:E99jt7Z3.net]
>>362
ならねーよ馬鹿

380 名前:デフォルトの名無しさん [2018/07/11(水) 22:15:05.86 ID:Zqsgthqv.net]
また板を荒らしてるのか

381 名前:デフォルトの名無しさん [2018/07/11(水) 23:58:57.81 ID:Zqsgthqv.net]
IP表示スレに書き込んだ上で荒らし行為とか頭がおかしい

382 名前:デフォルトの名無しさん [2018/07/12(木) 00:27:48.19 ID:gpOSM7dO.net]
思い込みか決めつけか、どっちにしろ頭おかしいのはお前。
で、具体的にどれよそのIP表示スレとやらは?
犯罪者のお前と違ってまっっっっっったく意識してないからどのスレかなんて覚えてないぞ。

383 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 05:03:59.31 ID:OSngjU1a.net]
過去ログ見たけど最近ずっと荒らされているねここ
毎回「私は荒らしじゃないよ」って言いながらネガキャンしている人いるし
何があったの?

384 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 05:54:46.89 ID:HTspRwx9.net]
荒らされてるって騒いでるおじさんのほうが荒らしなんだけど、そろそろ自覚して

385 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 06:12:47.05 ID:OoNO6o7x.net]
>>369
それな

386 名前:デフォルトの名無しさん [2018/07/12(木) 06:19:43.21 ID:UjZ0bFJI.net]
IP表示して自分で荒らし行為してますって宣言してるからどうしようもない
何度もおかしいって忠告してるのに

387 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 08:01:03.27 ID:ObTIOCwS.net]
>>368
スレッドを読んでいない奴が荒らしです



388 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 08:48:15.34 ID:ax9CLQnp.net]
>>369
ほんまこれ
なんも荒れてない時にも湧いてくるから意味不明だわ
んできっと俺も荒らしの自演認定されるんだろな

389 名前:デフォルトの名無しさん mailto:sege [2018/07/12(木) 14:34:01.53 ID:ObTIOCwS.net]
>>368
この様にして毎回荒らされるんです
>毎回「私は荒らしじゃないよ」って言いながら
まさにこの通り

390 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 15:53:09.16 ID:Vvh/EchF.net]
IDを変えられるという事はこれ以降も荒らしが出てくるのか

出てくる度にチェンジって言ってやれば良いんじゃね?

391 名前:デフォルトの名無しさん [2018/07/12(木) 19:06:24.92 ID:oA3iTrfs.net]
CとRubyの繋ぎで構造体をやり取りしたいんだけど、

require 'fiddle/import'
module M
extend Fiddle::Importer
dlload "libc.so.6"
extern('int gettimeofday(void *, void *)')
Timeval = struct( ["long tv_sec",
"long tv_usec"])
end

timeval = M::Timeval.malloc
e = M.gettimeofday(timeval, nil)

if e == 0
p timeval.tv_sec #=> 1173519547
end

上のコードよりもっと簡単な方法って何かない?

392 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 21:53:13.39 ID:4/rtE517.net]
頭のおかしい人が来てますよ。

質問・雑談スレ357@運用情報板
agree.5ch.net/test/read.cgi/operate/1530175433/

393 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 22:44:30.03 ID:HTspRwx9.net]
ガチのヤバいやつだな

394 名前:デフォルトの名無しさん [2018/07/12(木) 23:05:08.42 ID:oA3iTrfs.net]
>>377
>>378

チェンジ

395 名前:デフォルトの名無しさん mailto:sage [2018/07/13(金) 20:25:59.28 ID:NaTEQMZW.net]
Rubyはじめようと思ったけど
MacにRailsをインストールできなくてつんだかとおもたわ

396 名前:デフォルトの名無しさん mailto:sage [2018/07/13(金) 20:48:34.50 ID:IlVyAeDp.net]
そうか

397 名前:デフォルトの名無しさん mailto:sage [2018/07/13(金) 22:06:05.58 ID:wOTbnDR7.net]
Macとかだとrbenvで入れて遊ぶのが吉な気がする



398 名前:デフォルトの名無しさん [2018/07/13(金) 23:44:04.04 ID:2LuiASc+.net]
運用情報板でここの荒らしが盛大に自演をミスって自爆
本当に何を考えてんだ荒らしは

>>376
[1,2,3,4].pack("iiii")
みたいな感じで配列をパックして文字列として渡す

399 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 22:21:38.86 ID:ASKtOa+Y.net]
で、そもそも何から勉強すればいいの?

400 名前:デフォルトの名無しさん [2018/07/14(土) 22:42:07.24 ID:Mvzxn60j.net]
ttps://qiita.com/is-lab/items/e0443b79da117ed48294
homebrewとrbenvのインスコ方法はぐぐればすぐ見つかる

401 名前:デフォルトの名無しさん [2018/07/15(日) 11:53:49.50 ID:3AmTzi+H.net]
つまりいちいちググらないといけない。
すぐ使えない。

402 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 13:39:49.06 ID:jvo4M5NJ.net]
えーそれはさすがに無理だろー!?
無知な状態からググる必要があるのは
Ruby以外のどんな言語でも同じだろー?

403 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 13:40:48.31 ID:jvo4M5NJ.net]
ググらないといけないから使えない
というのはさすがに無理筋

404 名前:デフォルトの名無しさん [2018/07/15(日) 13:49:38.29 ID:MJAsPMzW.net]
>>376
dl/win32の頃はarrayをpackしてわたしてた
require 'Win32API'
api = Win32API.new('foo.dll', 'foo', 'p', 'v')
args = ["\0" * 256, "\0" * 256, "\0" * 256]
api.call(args.pack("p3"))

405 名前:デフォルトの名無しさん mailto:sage [2018/07/18(水) 04:03:49.75 ID:QgYi3fpw.net]
ruby -v
ruby 2.5.1p57 (2018-03-29 revision 63029) [i386-mingw32]

この式だとシンタックスエラーと表示される。
p { a: 1, b: 2, c: 3}.map{ |k, v| [k,v * 10] }

hash_a =をつけると正常になる。
p hash_a = { a: 1, b: 2, c: 3}.map{ |k, v| [k,v * 10] }

上の式だとなにかに代入しないのでシンタックスエラーになったのでしょうか?

406 名前:デフォルトの名無しさん mailto:sage [2018/07/18(水) 07:39:03.25 ID:C6SSklxV.net]
>>390
ハッシュじゃなくてブロックと解釈されたんだろう
p({...}) とすればエラーは消えるはず

407 名前:デフォルトの名無しさん mailto:sage [2018/07/18(水) 07:46:29.71 ID:sfr3l4yF.net]
p({ a: 1, b: 2, c: 3}.map{ |k, v| [k,v * 10] })

と書けばいいと思うよ

p(に限らずメソッド名)の後に{が続くとブロック引数と解釈されるので
それに続く記述は式になっていないと構文エラーになる…んじゃないかな
ちゃんとparse.y読んでないからわからんけど



408 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 02:03:06.31 ID:Zcssm0G6.net]
サクっとRailsを勉強したけどマイグレーションクラスの書き方が気持ち悪いな

409 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 13:12:02.31 ID:kD3lyTPJ.net]
静的型付き言語から来たけど、リファクタリングが1万倍つらい

410 名前:デフォルトの名無しさん [2018/07/19(木) 13:16:20.54 ID:ZMW1ym8c.net]
静的から来たんなら一発でリファクタリング不要なの創れ

411 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 13:49:54.32 ID:qcbfzO+6.net]
つまり動的型付け言語ではなく静的型付け言語を作れと?
TypeScriuptみたいに、TypeRubyを作れってことですかな?

412 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 13:58:21.55 ID:Yb9MoOug.net]
Crystal使えよ

413 名前:デフォルトの名無しさん [2018/07/19(木) 14:03:03.18 ID:ZMW1ym8c.net]
>>396
がんがれ

414 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 14:36:24.64 ID:BYkLZQpG.net]
田中康夫かよ

415 名前:デフォルトの名無しさん [2018/07/19(木) 15:04:37.31 ID:QlKeHbXC.net]
作ろうかな。その名も「なんちゃってCrystal」

416 名前:デフォルトの名無しさん [2018/07/19(木) 18:03:08.91 ID:+Po4h/oD.net]
書き込み時間みたらここまで全て自演か

質問・雑談スレ357@運用情報板
agree.5ch.net/test/read.cgi/operate/1530175433/
のスレの星もちって言われてる人が自演でここを荒らしてるので気をつけてね

417 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 00:39:00.49 ID:/HPmTQSM.net]
荒らしはお前だろ統失



418 名前:デフォルトの名無しさん [2018/07/20(金) 03:08:49.88 ID:/pvYBo5v.net]
>>402
お前が例の荒らしなの?
というか人の質問ぶっちしてよくも荒らしてくれたな
失せろ

419 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 03:16:38.47 ID:1XJtiOGK.net]
この人は本物のアレな人なんで、これ

420 名前:ゥらもずっと居続けるだろうし、
我々が我慢するしかないのですよ
[]
[ここ壊れてます]

421 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 03:37:35.66 ID:ez2x5oas.net]
やっぱりそうだったか
ID:/HPmTQSMはNGにつっこんで無視するとして自演はどうする?
いくらでもIDを変えられるだろこいつ

422 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 03:45:11.39 ID:1XJtiOGK.net]
さすがの自覚なし

423 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 04:10:11.54 ID:VbQ1skD1.net]
荒らしを擁護する奴とか明らかにネガキャン狙いの奴は自演だろうし、
片っ端からチェンジで良いんじゃね?

424 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 07:18:12.34 ID:jshWd164.net]
初心者質問ですいませんがwebサービスを実装した時の認証って一般的にはどのようにしているのでしょうか

単純なhtmlからajaxでwebサービス叩くのは簡単ですが、認証も伴うとなるとgetやpostでどう実現しているのか不思議に思いまして

425 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 08:22:04.91 ID:p6o0GwEl.net]
twitter api とかは、oauth認証を使っている

gem 'twitter'
gem 'oauth'
gem 'omniauth-twitter'

426 名前:デフォルトの名無しさん [2018/07/21(土) 22:42:46.60 ID:R3kyCjkl.net]
今、mrubyってのを組み込み用に作ってるんだよな確か
Cで書かれてる実装の移植じゃダメな理由でもあるの?

427 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 22:52:36.66 ID:H6KFndt4.net]
>>410
MRIはUNIXに依存してるから組み込みでは使い物にならない



428 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 23:14:05.95 ID:BkDv2dG7.net]
> 今、mrubyってのを組み込み用に作ってるんだよな確か

今・・・作っている・・・?

もう何年も前から聞く名前だが
終わらないプロジェクトじゃないかw

429 名前:デフォルトの名無しさん [2018/07/21(土) 23:24:14.10 ID:PhJqS+u6.net]
誰も何も要求してないから要求仕様というものが無いwwwww
打出の小槌wwwww

430 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 23:38:11.33 ID:HTyh/4m5.net]
なんかもっと作って欲しいものあるんだけどな……

431 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 23:41:32.25 ID:H6KFndt4.net]
補助金貰ってるから作ってるポーズだけは続けなきゃいけないんだよ
MRIのコミッタ達が飯食えなくなったらそれこそ終わりだぞ

432 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 23:43:21.12 ID:HTyh/4m5.net]
Rubyと組み込みってあんま相性良さそうに思えない
Windows(GUI)とかAndroidとかもっと進出して欲しかった

433 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 23:44:35.25 ID:HTyh/4m5.net]
あと最近Pythonに押されてる理由の機械学習系のライブラリとか
リソース投入して欲しい分野他にいっぱいあるのに

434 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 23:45:26.60 ID:H6KFndt4.net]
そういう海外の特定企業のプラットフォームに依存したものだと補助金貰いにくいからね
機械学習は今のRubyにはできる人材がいないから無理

435 名前:デフォルトの名無しさん [2018/07/21(土) 23:45:28.95 ID:R3kyCjkl.net]
>>411
ラズパイやなんかはほぼlinuxの組み込み用ディストリだろ?
別にunix依存でも組み込みで遊べれば良いんじゃないかと個人的には思う

というかなんか荒らしが湧いてるな

436 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 23:45:36.53 ID:Q1eQHcZd.net]
スマフォは端末20億ぐらいが今の所上限、人口から計算するとそうなる。
IOTになると300億ぐらいになると言われている。
だから市場としては組み込みのほうが遥かにデカイんだ。

437 名前:デフォルトの名無しさん [2018/07/21(土) 23:48:41.96 ID:R3kyCjkl.net]
もしかして来てるのは運用情報板からか?



438 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 23:53:39.13 ID:H6KFndt4.net]
>>420
補助金の申請書に書くには良い説明だね
現実にはそれは詭弁で、何百億もばら撒かれるような大量生産するデバイスに、
ラピッドプロトタイピングを売りにしてるmrubyなんか使われる訳がないんだよね
一方プロトタイピングでコストを気にしないならラズパイ的なLinuxボードでフルのRuby動かせばいいわけで、完全に論理的に破綻してる

439 名前:デフォルトの名無しさん [2018/07/21(土) 23:58:26.26 ID:R3kyCjkl.net]
ああ、商業的に

440 名前:mrubyを組み込み市場にって事か
ホビー的なものやプログラム教材的なものも含めればそれなりに大きいし
[]
[ここ壊れてます]

441 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 00:09:52.37 ID:k8KbWpzZ.net]
IoTで夢はひろがりんぐ
でも現実はJavaScriptとPythonに
シェアをゴリゴリ取られてる

442 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 00:14:01.72 ID:csMVOBEm.net]
Ruby本体のパーサってツール使って書かれてるの?
それとも手作業?

ずいぶん前に何かツールつかって書かれてる、みたいな記事を見た記憶があるんだけど
あやふやで思い出せない

443 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 00:38:46.00 ID:KbQrJm7H.net]
>>419
いや組み込み用っていうかそういう組み込みじゃない
linux動くなら普通のruby使えばいいし

444 名前:デフォルトの名無しさん [2018/07/22(日) 00:39:36.44 ID:8Nb060qV.net]
あんなに嘘を書き込んでたネガキャン厨が出てこなくなった
何故だ?

445 名前:デフォルトの名無しさん [2018/07/22(日) 00:41:39.08 ID:8Nb060qV.net]
あ、425の質問か
俺は知らない

446 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 00:55:20.77 ID:ZYdHEl+H.net]
bison と言うツール(と言うことが聞きたい?)

447 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 01:01:34.78 ID:ZYdHEl+H.net]
カーネル(?)オブジェクトと一緒にリンクしてローダからジャンプして起動される様な組み込み。それこそファイルシステムも無いようなものもターゲット。



448 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 08:45:50.30 ID:sunXcUq/.net]
>>425
この本に書かれていたような気がする。
https://www.ohmsha.co.jp/book/9784274050657/

確かツールでは上手くできなくて、独自のものを使っているだったような。

449 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 09:11:02.92 ID:mb9TeYz9.net]
>>431
残念、どう見てもbison(yacc)です
https://github.com/ruby/ruby/blob/e70cad609109d111f6474d4001455a6dae70d453/parse.y
相変わらずrubyistはいい加減なことばかり言うね

450 名前:デフォルトの名無しさん [2018/07/22(日) 13:32:44.36 ID:LiIRy0eu.net]
rubyは始まる前に終わってしまった

451 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 16:27:12.16 ID:y3TgOVe7.net]
はいはい

452 名前:デフォルトの名無しさん [2018/07/22(日) 16:27:40.65 ID:8Nb060qV.net]
質問を普通に読むと、
パーサジェネレータに食わせるソースを人手で書いてるのかツールで出力してるのか、
聞いているんだと思うんだが

例の荒らしは日本語が不自由なの?

453 名前:デフォルトの名無しさん [2018/07/22(日) 17:19:25.94 ID:bmpyz9fo.net]
>>435
元の質問ってこれだよね
>>>>425
>> Ruby本体のパーサってツール使って書かれてるの?
>> それとも手作業?

普通に読むと、パーサのコードがジェネレータで自動生成されているのか、
あるいは手書きでゴリゴリとパーサをC言語で書いているのか?という内容で、
>>429>>432が適切なレスを返している(>>431は知ったかぶりのお馬鹿さん)

で、それに対して日本語が不自由と噛み付く>>435の日本語読解力に対して小一時間

ちなみに、Rubyの構文解析(パーズ)に関しては、
以下の文書、いわゆる RHG - Ruby Hacking Guide で詳しく解説されてる
・Rubyソースコード完全解説
 i.loveruby.net/ja/rhg/book/

454 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 17:43:50.81 ID:o4y3Fl/D.net]
>>431の本は読んだことないけど、いくらRubyistが書いた本とはいえそんな低レベルな間違いをするとは思えないから実際の記述が気になるな
独自に作ったと書かれてるのってパーサじゃなくて字句解析器のことだろうか
字句解析器は手書きでも比較的簡単に作れるので、パーサは自動生成で字句解析は手書きというのはよくあるよね

455 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 18:27:03.98 ID:NHUbC5Q3.net]
標準ライブラリのRipper クラスで、字句・構文解析ができる。


456 名前:法規則から、Bisonでパーサを作る

文法規則(parse.y) → Bison → パーサ(parse.c)

「Rubyのしくみ」に書いてある
[]
[ここ壊れてます]

457 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 18:30:21.91 ID:mu5XaGiF.net]
Rubyの文法は、改行が文のセパレータだったりなかったりするので、yaccでは書きにくそうな気も。



458 名前:デフォルトの名無しさん [2018/07/22(日) 21:20:30.98 ID:bmpyz9fo.net]
>>437
>独自に作ったと書かれてるのってパーサじゃなくて字句解析器のことだろうか

Rubyの字句解析器は(次で詳しく書くけど)手書きだから、「独自に作った」には該当しないね

で、>>431の書籍は手元にあるから「独自に作った」部分を推測すると、p68 第3章の
囲み記事にある「YARV命令を間近に見てみる」の内容ではないかと思われる
この記事によると、Rubyの仮想マシン YARV の命令セットはC言語で実装されているが、
実際には insns.def という命令セット記述向け外部DSL(ドメイン特化言語)で書かれており、
Rubyで書かれた独自ツールを用いてC言語ソースが自動生成される、とある


>字句解析器は手書きでも比較的簡単に作れるので、
>パーサは自動生成で字句解析は手書きというのはよくあるよね

うん、よくある
ただし、Rubyに関しては字句(トークン)の意味が文脈によって異なるので、
字句解析器を汎用的なツール(Flex, Lex)で自動生成するのは原理的に無理
だからRubyでは字句解析器をC言語で(=手書きで)ゴリゴリ書いてる

459 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 21:35:50.53 ID:8Bgo+1zG.net]
   /__.))ノヽ
   .|ミ.l _  ._ i.)
  (^'ミ/.´・ .〈・ リ
  .しi   r、_) |  字句解析器はわしが独自に作った
    |  `ニニ' /
   ノ `ー―i´

460 名前:デフォルトの名無しさん [2018/07/23(月) 02:58:02.91 ID:4FKdTwd5.net]
parse.yって結構な量になるだろ
まじで手書きなの?

461 名前:デフォルトの名無しさん [2018/07/23(月) 03:30:44.45 ID:+9p86R5q.net]
flexはライセンスの問題があるのに対して、bisonは解決してるので、字句解析だけ手書きという場合もありそう。

462 名前:デフォルトの名無しさん [2018/07/24(火) 01:24:57.08 ID:USIMmUbR.net]
やっぱり理解してないな

463 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 11:09:18.60 ID:5ghygOWP.net]
def hoge(ary)
  if ary.length > 10

  略
end

def hoge(ary)
  return ary.pop if ary.length > 10
  略
end

464 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 11:14:14.74 ID:5ghygOWP.net]
途中で投稿しちゃったすまん

hoge1を書く時にhoge2みたく1行でぱぱっと書いてしまいたくなるんだけど、あまり良くない書き方かな?
return ary.popの値を別に使うわけじゃないから却って読みにくくなってるかな?
同様にbreak(ary.pop) if 〜 みたいなこともやりたくなる

def hoge1(ary)
  if ary.length > 10
    ary.pop
    return
  end
  略
end

def hoge2(ary)
  return ary.pop if ary.length > 10
  略
end

465 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 11:21:15.47 ID:5ghygOWP.net]
かといって (ary.pop; return) if 〜 とは書きたくないんだよね

466 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 12:11:36.42 ID:pu7GMHRK.net]
却ってもなにも普通に読みづらい
やる事がpopとreturnの2つあるんだから素直に別々に書け

467 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 14:03:55.04 ID:gr6cAZAi.net]
偉そうだな



468 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 15:44:55.28 ID:5ghygOWP.net]
>>448
サンキュー 横着しないで書くことにするわ

469 名前:デフォルトの名無しさん [2018/07/26(木) 23:53:19.41 ID:a+YNJ8TA.net]
ワンライナーで横着して書くのはすごい便利だぞ

470 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 10:42:21.60 ID:/FxeI0LB.net]
忘れた頃に見直すと凄く読み辛いけどな。

471 名前:デフォルトの名無しさん [2018/07/29(日) 03:07:55.01 ID:F6Tmnrz5.net]
普通、ワンライナー書いて通ったら、
早めにリファクタリングするだろ

そんな後々まで残しておかないよ

472 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 10:44:14.48 ID:BDdNcrbI.net]
しょせんワンライナーにそんな手間をかけるかよ。

473 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 10:54:49.57 ID:lzRBxehA.net]
どうでもいいだろ
どうせRubyなんか後でメンテできないんだから、後でばっさり捨てても惜しくないくらいの簡易な実装を心掛けたほうがいい

474 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 15:23:19.49 ID:i4fPEMEN.net]
一昔前の Web プログラミング言語のトレンドは動的型付け一辺倒でしたが、
その時代も終わり、静的な型宣言を再評価するフェーズが来ているように思います。
この背景には、おそらく Web プログラミングの規模が年々肥大化しており、
動的検査のコストが増してきたのが理由にあるでしょう。

475 名前:デフォルトの名無しさん [2018/07/30(月) 17:43:04.50 ID:sQTL1Bwj.net]
JSONに型情報含められたらな

476 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 18:13:38.72 ID:hiT7ttnh.net]
JSONに日付型入れられたらな

477 名前:デフォルトの名無しさん [2018/07/30(月) 22:30:45.90 ID:vVxxmyMz.net]
まーたネガキャンしとんのか
ほんと懲りないな荒らしは



478 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 00:20:31.75 ID:2+1mdxB2.net]
ステマ荒らし VS ネガキャン荒らし

ネガキャンじゃないやつは
ステマ荒らしだよw

479 名前:デフォルトの名無しさん [2018/07/31(火) 05:56:12.03 ID:CsKbzYRR.net]
ステマ荒らしとか、粘着はどういうアタマしとんねん

480 名前:デフォルトの名無しさん [2018/07/31(火) 05:58:46.14 ID:A5W680W/.net]
>>461


481 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 06:33:34.00 ID:M5dn2TAr.net]
だから大規模開発は、Haxe

ソースコードをそのまま送って、10言語に変換できる

482 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 06:37:15.77 ID:2+1mdxB2.net]
>>463
変換できたってライブラリを使った時点で破綻するんだから意味ない
jQueryを使ったコードをC++に変換したって動くわけない

483 名前:デフォルトの名無しさん [2018/07/31(火) 07:27:58.69 ID:CsKbzYRR.net]
ス テ マ 荒 ら し

↑の粘着のセンスって最悪やな

484 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 07:57:18.48 ID:w8271+58.net]
RubyスレでRubyのステマ荒らし?
こわいわー
いやマジでこわいわー

485 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 08:19:37.62 ID:JoTrRiyA.net]
荒らし「ステマ荒らしVSネガキャン荒らし(ドヤッ)」


凄い語録が誕生したな

486 名前:デフォルトの名無しさん [2018/07/31(火) 09:08:38.32 ID:kmul1JEG.net]
粘着さんは自演でネガキャンしないと発作が起きちゃうから、
みんな優しくしてあげて
けっして「ステマ荒らし(ドヤッ)さん」なんて呼んではだめですよ

話は変わるけど、
ブロック内のself省略したらself以外のオブジェクトが割り当てられるようなメソッドってどんくらいあるの?

487 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 10:24:26.97 ID:c3b7dR5Y.net]
>>468
1つもない



488 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 10:36:43.29 ID:f5dopGkZ.net]
Rubyの実用ライブラリはどこにある?

489 名前:デフォルトの名無しさん [2018/07/31(火) 11:15:46.71 ID:kmul1JEG.net]
self省略って便利なのは便利なんだよな
いちいちselfって書かなくて良いから

490 名前:デフォルトの名無しさん [2018/07/31(火) 11:53:47.74 ID:xRXvz4C9.net]
@と勘違いしてないか

491 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 12:07:44.84 ID:3hAWRCkR.net]
自分は静的型の恩恵を受けてRubyを開発しているのに
その言語のユーザーにはそれを与えない、まさに鬼畜の所業
それだけに留まらず、動的型の方が優れていると嘘を教え込み
人の人生観や世界観を台無しにして囲い込み
骨までシャブりつくす姿勢は流石の宗教家
「Rubyをキメると気持ちいい!」

492 名前:デフォルトの名無しさん [2018/07/31(火) 12:10:34.26 ID:kmul1JEG.net]
質問の間に色々レスがついたからもう一度書くわ

ブロック内のself省略したらself以外のオブジェクトが割り当てられるようなメソッドって何があるの?
スレの上の方になんか関係しそうなコードが書いてあったから疑問に思ったんだけど

493 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 12:22:51.02 ID:H1jTAdrX.net]
意味がわからない文章だが、コンテキストが入れ替わってることを言いたいのかな
そんなメソッドは作っただけ存在するけど

494 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 12:23:01.25 ID:cZMkkV3A.net]
ステマ荒らし(ドヤッ)さんはネガキャンがほんと

495 名前:うに大好きだな

>>474
mapのやつ?
[]
[ここ壊れてます]

496 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 12:54:43.34 ID:c3b7dR5Y.net]
>>474
1つもないっつってるだろ

497 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 13:07:28.97 ID:cZMkkV3A.net]
>>477
ステマ荒らし(ドヤッ)さんは帰って
どうぞ



498 名前:デフォルトの名無しさん [2018/07/31(火) 13:12:42.46 ID:zoworXJJ.net]
>>474
継承を使えば普通だけど、何か別の事柄を期待しているのかな?
  irb(main):001:0> class Foo; def foo; puts 'FOO'; end; end
  => :foo
  irb(main):002:0> class Bar < Foo; def bar; foo; end; end
  => :bar
  irb(main):003:0> Bar.new.bar
  FOO
  => nil

  2行目、メソッド Bar#bar の定義内で self を省略したメソッド foo が
  呼び出されているけど、この時、実際には Bar(= self) ではなく
  Foo が割り当てられる


>スレの上の方になんか関係しそうなコードが書いてあったから疑問に思ったんだけど

アンカって知ってる?

499 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 13:21:24.28 ID:Zh449vmZ.net]
意味がわからないから具体例出せ

500 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 13:22:06.05 ID:i+0VO+yy.net]
.map{}やらの中のselfの事だろ
なんかこの粘着、時々日本語の読解がおかしくなるよな

501 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 13:31:30.22 ID:H1jTAdrX.net]
書いてる本人しかわかってないから、自演が惨めすぎるんだが

502 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 13:32:54.45 ID:0cuGom8L.net]
やっぱり荒らしてるのは星持ちか

503 名前:デフォルトの名無しさん [2018/07/31(火) 13:34:24.76 ID:zoworXJJ.net]
>>481
>.map{}やらの中のselfの事だろ

具達的なコードで示すか、過去レスのアンカをカキコしる

504 名前:デフォルトの名無しさん [2018/07/31(火) 13:36:32.60 ID:Sn2VrW8x.net]
@と勘違いしてるっぽい

505 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 13:39:02.09 ID:0cuGom8L.net]
以降ずっと自演が続きます

506 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 18:34:59.85 ID:KsiqHYAS.net]
eval系メソッドのこと?

https://ideone.com/znQz3T

507 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 19:21:07.27 ID:M5dn2TAr.net]
JavaScript, TypeScript では、this が文脈で変わるので、ややこしい!

それを避けるため、jQuery, Haxe では変わらないようにしている



508 名前:デフォルトの名無しさん [2018/07/31(火) 19:49:00.54 ID:0cuGom8L.net]
以降もずっと自演が続きます

509 名前:デフォルトの名無しさん [2018/07/31(火) 23:54:26.33 ID:wYvVLkW6.net]
>483デフォルトの名無しさん2018/07/31(火) 13:32:54.45ID:0cuGom8L
>やっぱり荒らしてるのは星持ちか


このレスがついてから急にレスが付きづらくなったね

510 名前:デフォルトの名無しさん [2018/07/31(火) 23:58:45.81 ID:PrQlt9wc.net]
図星

511 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 01:48:47.30 ID:i67K/6im.net]
RustってちょっとRuby臭がするんだけど、近づいてみるとC++の時に嗅いだ嫌な臭いがして頭がクラクラする

512 名前:デフォルトの名無しさん [2018/08/01(水) 02:22:55.90 ID:09aZWOww.net]
ブロック付きメソッドで与えられたブロックを、
メソッド内でしかも別のコンテキスト下で処理したいんだけど方法ってある?

513 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 02:39:34.28 ID:GZaAdjmn.net]
【初心者必見!】Ruby evalを理解し活用するための4つのTips
https://www.sejuku.net/blog/21273

instance_eval, class_eval, module_eval とか?

514 名前:デフォルトの名無しさん [2018/08/01(水) 03:04:07.48 ID:09aZWOww.net]
誰か踏んでみて

515 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 03:50:19.21 ID:2bwlZxeu.net]
>>493
あるけどevilだしめんどくさいやめとけ

516 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 04:25:42.64 ID:9f0eyaeN.net]
贅沢なビール

517 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 10:00:59.65 ID:/KJnVmCM.net]
プロゲートから先に進めないwww



518 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 12:21:49.98 ID:FFxaCJen.net]
今からRuby勉強してルビィスト名乗ってドヤ顔できる?
アンタらのように下々どもの言語ディスる能力ほしいんだけど

519 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 12:30:40.81 ID:GDPBpnE0.net]
今やRubyはディスられる側

520 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 12:54:34.39 ID:SPXi67Wg.net]
もはやAppleにいらない子扱いされてるObjective-Cすら超越した近寄っちゃあかん言語の筆頭
https://pbs.twimg.com/media/Di_fIwmUUAES3Lk.jpg

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

522 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 13:36:49.31 ID:FFxaCJen.net]
単純により給料がいい言語に移ってるだけでRuby開発はどこもやりたいんだよね?
企業が欲しい言語エンジニアとエンジニアがやりたい言語に違いがあるだけじゃない?

523 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 14:03:43.11 ID:BDoQYqGC.net]
残念ながらこれが現実よ
言語としてエンジニアから嫌われてる
https://japan.zdnet.com/article/35109803/

524 名前:デフォルトの名無しさん [2018/08/01(水) 18:58:35.84 ID:09aZWOww.net]
またステマ荒らし(ドヤッ)さんがネガキャンしてる

525 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 19:09:54.49 ID:hJYNlAh1.net]
>>504
荒らし荒らしいってるお前も荒らしだろ
今見たら俺のレスがステマ荒らし(?)認定されてて笑ったわ
大して荒れてない時でも荒らし荒らしうるせえんだわ

526 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 19:12:14.01 ID:VQCovrqi.net]
>>504
この人の自演は何かの病気なんじゃないか?

527 名前:デフォルトの名無しさん [2018/08/01(水) 19:17:59.50 ID:33KC14nX.net]
ステマ荒らし(ドヤッ)さん「RubyスレでRubyをステマするのはずるいブヒー。これじゃネガキャン出来ないブヒー」

ステマ荒らし(ドヤッ)さん「悔しいブヒー。ステマは荒らしブヒー」ブヒブヒ



528 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 19:23:32.66 ID:i67K/6im.net]
rubyはとりあえず作ってみるという作業に向いていて、それで良いものをたくさん生み出したが、
それらは結局他の言語へ移植されていって、rubyでなくてもいい状況になってしまった
ruby3に向けて速くしようと頑張ってるが、それでもたかが知れてるので、
新しい洗練された標準ライブラリを作ることも必要だと思う

529 名前:デフォルトの名無しさん [2018/08/01(水) 19:25:48.31 ID:33KC14nX.net]
というか荒らしは日中から書き込んでるんだな
もしかして無職?

530 名前: mailto:sage [2018/08/01(水) 19:35:27.18 ID:6NCuGzpD.net]
>それらは結局他の言語へ移植されていって
RoR はどこに移植されましたか?

531 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 19:46:18.00 ID:i67K/6im.net]
>>510
それが残って存在意義になってるのが現状だね

532 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 19:47:05.72 ID:7TmTR3QV.net]
>>510
いい加減にしとけよおまえ

533 名前: mailto:sage [2018/08/01(水) 19:49:52.90 ID:6NCuGzpD.net]
>>512
なんのことですか?

534 名前:デフォルトの名無しさん [2018/08/01(水) 20:24:07.20 ID:yeaXvKr1.net]
QZaw55cn4cのトリップって運用情報板で言われてるボランティアとか星もちだろ?

で、何したの?

535 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 20:36:57.27 ID:Al4aQLEL.net]
働いたの?

536 名前: mailto:sage [2018/08/01(水) 20:41:47.35 ID:6NCuGzpD.net]
>>514
星持ちではありません

>>515
5月に固定資産税を払いました

537 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 21:00:07.78 ID:JsKaYcG1.net]
ああ、やっぱり
IP切り換えて別のスレに書き込む度に>>516が高頻度でついてくる事があったからおかしいと思ってたけど
運営ボランティアの人だったんだ



538 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 21:02:06.21 ID:Al4aQLEL.net]
運営ボランティアの人を頭がおかしい人のように言わない
失礼だろ。奴隷にも人権はある。

539 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 21:13:04.63 ID:JsKaYcG1.net]
こういう自演のパターンも結構見た

540 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 21:20:37.46 ID:hJYNlAh1.net]
「IP切り換えて別のスレに書き込む度に>>516が高頻度でついてくる」って
もう統合失調症の被害妄想だろこれ……
悪いこと言わないから精神科か心療内科で一度診てもらえ

541 名前:デフォルトの名無しさん [2018/08/01(水) 21:28:52.30 ID:ucbmp5eJ.net]
>>513
ID:6NCuGzpDが星もちだろうがなかろうがどうでも良いだろ
何故そんなに必死なの?

542 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:12:25.20 ID:GDPBpnE0.net]
>>520
Ruby信者ならそれぐらい普通

543 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:13:15.51 ID:GDPBpnE0.net]
だんだん昔のHSPスレの雰囲気に似てきたな

544 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:14:39.02 ID:xKKgG+mq.net]
Rubyをすくうすべはないのか

545 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:20:28.02 ID:GDPBpnE0.net]
動的型なんかにするから袋小路になるんだよ
これは初めから決まってたことでどうしようもない
経験的に、プログラムは何でも可能な限り静的なほうが良い
これを何でも動的なほうが良いと考えるのは経験が足

546 名前:りてない
スタティック最高
[]
[ここ壊れてます]

547 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:23:39.13 ID:xTOwcTcT.net]
おくすり増やしておきますねー



548 名前:デフォルトの名無しさん [2018/08/01(水) 22:24:18.58 ID:DGfW2k2a.net]
またか

懲りないな

549 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:32:33.91 ID:+VbRL20g.net]
>>524
君がRailsのような画期的かつ有効なRubyの使い方を新たに示せば余裕で救えるよ。
Rubyにとって不幸だったのは、Railsの流行によってRubyに入ってきたのが頭悪い連中ばかりで、
Rubyに次のイノベーションを起こせるような人材がいなかったこと。
君がその一人でないというなら、今こそ君自身が君自身の力(コード)でGitHub上で君の能力を示しなさい

550 名前:デフォルトの名無しさん [2018/08/01(水) 22:42:05.03 ID:DGfW2k2a.net]
自演がほんと好きだな

551 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:43:44.31 ID:xKKgG+mq.net]
日本人がふがいなさすぎるんだ
なぜ静的RubyやスケーラブルなRubyを勝手にでもつくろうとせんのだ
ちょっと手直しするだけだったろうに

Rubyをつくるように促した連中はそういう気運を待ってたにちがいないのに

552 名前: mailto:sage [2018/08/01(水) 22:45:17.92 ID:6NCuGzpD.net]
>>530
>静的Ruby
これ、欲しい!

553 名前:デフォルトの名無しさん [2018/08/01(水) 22:51:19.29 ID:DGfW2k2a.net]
>>531
はそのスレを荒らしてマッチポンプ繰り返すから嫌なんだよ

554 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:55:57.25 ID:hrMLhnvx.net]
やはりスレを荒らしてた奴か

555 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 22:57:58.09 ID:hrMLhnvx.net]
ボラかどうかの話をしてるだけなのに
荒らしがでてくるからおかしいと思ったけど
コレ、酷くないか?

556 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 23:06:59.96 ID:GZaAdjmn.net]
Rails の影響は、Node.js + Express など、すべての言語のフレームワークへ及ぶ

Ruby は関数型で、Groovy, JavaScript などに似ている。
それに型推論を付ければ、Kotlin, Haxe になる

他にも、Elixir もある

だから、Rubyを学ぶと、数言語できるようになる

557 名前:デフォルトの名無しさん [2018/08/01(水) 23:16:24.70 ID:3uNc8Mw3.net]
これ以降全て自演



558 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 06:52:41.00 ID:SjibvNdR.net]
Rubyの次のverはどうなるかな
parse.yを書いてる環境も公開してくれたら良いな

559 名前:デフォルトの名無しさん [2018/08/02(木) 06:56:24.03 ID:SjibvNdR.net]
そういえばろろそろ無職タイムか

560 名前:デフォルトの名無しさん [2018/08/02(木) 22:17:27.97 ID:+1EqszfI.net]
Rubyのyaccソースを書いてるツールとか言語開発している環境とかの本出して欲しいな

561 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 22:20:09.15 ID:5ti5JZJP.net]
Matzは普通にEmacsオンリーだぞ
20年前から何一つ変わってない

562 名前:デフォルトの名無しさん [2018/08/02(木) 22:25:26.99 ID:+1EqszfI.net]
それ、エディター話だろ
たしかyaccソースは複雑になりすぎて内製のツールつかってるんじゃなかったか?
どこかにそういう記事あったよな確か

563 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 22:41:44.29 ID:5ti5JZJP.net]
>>541
gitのコミットログ見たらすぐわかるけど、普通に手で編集してるよ

564 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 22:44:42.65 ID:EamslOb8.net]
ヒエ……あれ直に書いてるのか
まあそこがrubyの肝でもあるが

565 名前:デフォルトの名無しさん [2018/08/02(木) 23:36:53.71 ID:+1EqszfI.net]
いやいや、内製ツールあるだろう普通に考えて

566 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 23:42:52.79 ID:5ti5JZJP.net]
いやいや、気になるならgithubにコミットログくらい見に行くだろう普通に考えて
そんなだからruby使いがいつまでも馬鹿にされるんだぞ

567 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 23:43:39.60 ID:oW+8xglz.net]
コミットログで手かツールか判別できるか?



568 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 23:45:34.29 ID:5ti5JZJP.net]
だから自分で確かめろよw
仮に変なツール使ってたとしても、手でやっても全くの手間変わらないような修正が並んでるよ

569 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 10:29:43.98 ID:WJQL4Ki3.net]
普段から型すら書きたくないって言ってるのに
コミットログなんか見るわけないじゃん
それが

570 名前:必要なことであってもだ []
[ここ壊れてます]

571 名前:デフォルトの名無しさん [2018/08/04(土) 09:48:29.21 ID:qh8OmSn4.net]
QZaw55cn4cがまたあばれてんのか
ほんと懲りないな

572 名前: mailto:sage [2018/08/04(土) 13:26:13.46 ID:Rdsot1y5.net]
>>549
https://www.youtube.com/watch?v=Y_oD0ZWfWz4

573 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 14:44:57.22 ID:NrQVv38L.net]
スタンドアロンで使えるActiveScriptRubyみたいなのが欲しいな
今風に言えばRubyをくっつけたElectronみたいな奴

574 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 06:51:56.13 ID:S3FmLgSz.net]
rubyはプログラミング集中に邪魔な面倒な約束事を書くのを端折りたい人が使うもんじゃないの?

575 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 06:55:03.34 ID:rv82PXHz.net]
>>551
Ruby版Electronは欲しいな

Rubyと言えばRails一本槍で
WindowsとGUI軽視が
Rubyの普及を妨げたと思う

576 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 06:58:39.94 ID:WWyVTQgE.net]
RubyをGPL感染なしで使うのは難しいから、Rubyをアプリに組み込むような配布形態が流行ることはないよ

577 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 07:03:15.02 ID:rv82PXHz.net]
たしかにGPL汚染でプロプライエタリで使うのは難しくて
Linuxみたいなフリーウェア的思想の方へ
流れていったから現在があるんだろうね

Androidのネイティブアプリも軽視されてると思う
まあこれもできなくはないけど普及してはない



578 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 07:24:16.82 ID:F0AAwpND.net]
LinuxはGPLやで?

579 名前:デフォルトの名無しさん [2018/08/05(日) 10:42:24.03 ID:lge76hvQ.net]
この知ったかしてるのってQZaw55cn4c?

580 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 11:07:51.33 ID:6sr+WFQ9.net]
PCやAndroidのアプリにバンドルするならmrubyだろうけど、
さすがにmruby使うのはだいぶ本末転倒だからなあ
そこまでするくらいなら普通にElentronのNode使ったほうがよっぽど生産性高い

581 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 14:08:26.91 ID:gZzT8382.net]
ちょっと前にmrubyを使ってみた事があるけどBignumが標準でないためFixnumとシームレスに変換されなかったりして使いにくい
速度もCRubyに劣るしPC用アプリケーションの処理系としてはあまり向いていないと思う

582 名前:デフォルトの名無しさん [2018/08/05(日) 20:32:19.40 ID:XPCi/u53.net]
>>535
Expressが影響を受けたのはrailsではなくsinatra。
railsしか使ったことないのバレバレだな。
rubyとjsは全然似てない。jsの関数の万能さ、簡潔さをどうこねくりまわしてもrubyのblock proc lambdaみたいな面白仕様にはならない。
別にjsがすべてに優れてるわけでは全然無いが第一級関数の扱いについてだけは太刀打ちできないだろ。

583 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 20:39:25.50 ID:rv82PXHz.net]
>>560
JSよりRubyの方が書きやすいんだが

584 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 21:02:25.09 ID:lCdDooCa.net]
OOPするならクラス定数すら定義できないJSは問題外やわ

585 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 21:05:17.95 ID:aA1uZ2Py.net]
みんなtypescriptで書いてるから気にしてない

586 名前:デフォルトの名無しさん [2018/08/05(日) 21:11:54.17 ID:XPCi/u53.net]
>>561>>562
ようするに全然似てないだろ?
似てるって言ってる>>535に対する反論なのだが。
勝手にjsからの回し者認定して攻撃してこないでよね。
わざわざ優れてるわけでは全然無いとまで書いたのに。

587 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 21:15:30.39 ID:uVIrroLR.net]
> Rubyを学ぶと、数言語できるようになる
こればっかりは全く同意できないな
Ruby使いはRubyに固執して他の言語に手を出そうとしない傾向が他の言語使ってる人に比べて強い
性質的にはVBerに近い



588 名前:デフォルトの名無しさん [2018/08/05(日) 22:02:21.04 ID:zXVetSzu.net]
JS書きやす〜〜いwwwって人もいるんだな。
オジサン驚いたわ。

589 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 22:10:40.23 ID:aA1uZ2Py.net]
rubyは手に馴染むけど、いろいろなライブラリを使う状況になると、
入力補完が優れた他の言語の方が効率的になっちゃうんだよなあ

590 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 22:54:21.58 ID:rv82PXHz.net]
JSが書きやすかったら
AltJS言語があんなに出ないはず

591 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 22:58:55.54 ID:AAAWmj32.net]
ところが今はVSCodeがあるからJSクソ書きやすいんだよなあ
更に高い生産性や厳密なチェックを求めるならTypeScriptもある
VSCodeもTSも宗教的にRubyと相性最低最悪なのが悲しいところだが

592 名前:デフォルトの名無しさん mailto:sage [2018/08/05(日) 23:13:37.38 ID:5cf6E25B.net]
>>568
昔のJSは書きにくかったんだよ。
でも今はJSが書きやすくなったから、
生き残ってるAltJSはTypeScriptだけになったよ

593 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 00:06:44.28 ID:obJKiCah.net]
eachによるカウンタいらずのループとかRubyの大きなアドバンテージじゃね
最近のJavaScriptはカウンタを回さなくてもすむようになったんだっけ?

594 名前:535 mailto:sage [2018/08/06(月) 00:11:55.08 ID:b7eNDjo0.net]
>>560
Node.js は、Sinatra をフルスクラッチで書くのと同じ。
Node.js + Express が、Rails と同じ

JavaScript 第6版、2012、David Flanagan
これは、サイの表紙で有名な、JSのバイブル「サイ本」。
Flanagan は、Rubyの本も出している

プログラミングElixir、2016、Dave Thomas
この人も『プログラミングRuby』という本を書いている

たいてい、有名な言語学者は、Rubyの影響を受けている

Groovy は、Rubyに似てる。
Rubyを静的にすれば、Haxe, Kotlin に似てる

595 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 00:28:36.44 ID:9v8Yooys.net]
>>572
でその人はなんのアプリを公開してんの?

技術書の著者がアプリを公開してないと信用できない件
https://medaka.5ch.net/test/read.cgi/prog/1526850800/

596 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 00:35:02.13 ID:6IatVkYN.net]
>>571
forEach はだいぶ前からあるし、今は for of もある
ていうかRubyのアドバンテージとしてeachしか思いつかないってそれ他の言語知らないどころかRubyもよく分かってないだろ
あんまりRubyだけに固執しないで他のも触ったほうが結果的にRubyの理解も深まるよ

597 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 00:35:08.07 ID:ECWvwsc9.net]
>>571
for of がある
ただrubyのeachはすごいと思う
というかブロックがすごい
breakとかnextとか使えるもん
そんなん出来ひんやん普通



598 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 00:40:03.63 ID:9v8Yooys.net]
RubyよりJavaScriptがすごいのは
クロージャーだな。

599 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 00:43:13.56 ID:6IatVkYN.net]
クロージャは明らかにJSの方が優れてるでしょ
Rubyは第一級関数ではないという致命的な欠陥がある

600 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 00:52:57.65 ID:kftvtlvL.net]
まぁいくら優れたところがあっても動的型ってだけで
過去の言語のグループに入れられちゃうんだから笑えるね

601 名前:デフォルトの名無しさん [2018/08/06(月) 01:04:23.62 ID:wLyI8nBX.net]
>>572
あん?糖質か?
だからそのExpressが参考にしたのがSinatraだっつってんだが?Railsじゃなくて!

602 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 01:41:40.93 ID:obJKiCah.net]
Rubyはプロパティとメソッドの区別がないとか。何でも再定義できるとかもアドバンテージじゃね
これはJavaScriptあたりの範疇から外れるけどCライブラリとしゃべるようなケースでこの差は
めっちゃでかいと最近痛感している

>>574
忘れかけていたが・・・改めて調べてみた。for inは罠

603 名前:デフォルトの名無しさん [2018/08/06(月) 11:41:48.43 ID:xyu7L6lN.net]
またネガキャンしにきたのか
どんだけ自演がすきなんだ?

604 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 15:19:40.20 ID:wxQb+lVQ.net]
お前らデザイン含めてフルスクラッチでアプリ作れる能力あるの?

605 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 15:42:53.28 ID:9v8Yooys.net]
あるよって言えば何か話が

606 名前:iむのかな? []
[ここ壊れてます]

607 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 15:58:20.62 ID:wxQb+lVQ.net]
エンジニアごときがデザインできるって笑えるレベルだと思うけど



608 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 17:05:01.62 ID:XyFWrODd.net]
↑ごときって君は何様なの?

609 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 17:12:00.41 ID:r0vOnjXO.net]
デザインと言っても色んな意味あるのだが

610 名前:デフォルトの名無しさん [2018/08/06(月) 17:22:06.71 ID:bv191ZQE.net]
設計部にいたとき英語名刺の部署名がDesign Department になってたよ。
Designだけだと設計という意味で取られるのだろう。
日本人が一般に思い描いてる「デザイン」は英語で言うとAesthetic Design だろう。

611 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 18:52:55.23 ID:roUzhpPJ.net]
System Designというのもあるな。日本人には意味も必要性も理解されないが

612 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 19:05:51.88 ID:HJfJfiYg.net]
かっぱらいデザインが正しい。

613 名前:デフォルトの名無しさん mailto:sage [2018/08/08(水) 00:21:15.18 ID:xSkjc4Vz.net]
Ruby界隈はWindows嫌いが多いよな。CrystalもWindows版がないしw

614 名前:デフォルトの名無しさん [2018/08/08(水) 02:41:46.57 ID:TPD1PiP/.net]
まーた嘘ついてるのか
おまえがWindows嫌いなのはわかったってば

自演でWindows嫌い演じても、もう信じる人はおらんよ

615 名前:デフォルトの名無しさん mailto:sage [2018/08/08(水) 03:28:06.97 ID:4BWTfzpI.net]
     ミミ ヽヽヽヽリリノノノノ  . .|
    ミ   ,,、,、,、,、,、,、,、、 彡 . ..|
     l  i''"        i彡 . .|  オレの新Java
     | 」  ⌒' '⌒  |..   |
    ,r-/  <・> < ・> |  .  .|     これで儲ける
    l       ノ( 、_, )ヽ |  .
    ー'    ノ、__!!_,.、|  .  |
     ∧     ヽニニソ  l    /
   /\ヽ         /   .. ̄|
 /     ヽ.  `ー--一' ノ/ヽ    ノ7_,,, 、    ______
/   (⌒、"⌒ソ⌒ヽ─ '"   `、  ( ィ⌒ -'"",う/壱 / /万:/|
    ~''(_)(_)(_)(_)ソ       ヽノ   ,イ^_.|≡≡|__|≡≡|彡|_____
    ヽ/`、_, ィ/           ヽ─/ ̄//|≡≡|__|≡≡|/壱//万 :/|
   /     /           ) / ≡|__|≡|≡≡|__|≡≡|≡≡|__|≡≡|彡|
         /   ボラクル    i|≡≡|__|≡|≡≡|__|≡≡|≡≡|__|≡≡|彡|
\      ノ             |≡≡|__|≡|≡≡|__|≡≡|≡≡|__|≡≡|彡|
  \__ /             ノ|≡≡|__|≡|≡≡|__|≡≡|≡≡|__|≡≡|/

616 名前:デフォルトの名無しさん [2018/08/08(水) 04:34:19.88 ID:XhOfYtOw.net]
>>590
ほんそれ
意固地

617 名前:デフォルトの名無しさん mailto:sage [2018/08/08(水) 20:15:56.31 ID:bSSLrH09.net]
ねむい



618 名前:デフォルトの名無しさん mailto:sage [2018/08/08(水) 23:57:17.94 ID:+Ro3I41Z.net]
久々にRubyに立ち返ろうと思ってたんだけど
やっぱり今もWindowsだと環境構築は面倒っぽいな
楽になるツール作ったら需要ある?

619 名前: mailto:sage [2018/08/09(木) 00:06:46.14 ID:rS9AJYq6.net]
>>595
あります!

620 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 00:13:57.81 ID:ro52D2nE.net]
ツールで何を改善する気なんだ?
個人的な不満はWindowsとのインターフェイスに絡むキャラクタコード
以前に作ったツールはUnicode文字を含むコマンドラインオプションを受け取る方法がわからなくて
WIN32OLEを使ってWIM経由でコマンドラインオプションを取得する暴挙に・・・

コンソールのキャラクタコードはCP932だけど引数はU

621 名前:TF-8で外部のコマンドを実行したいときとかも
どうすればいいんだろうな
[]
[ここ壊れてます]

622 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 00:31:17.91 ID:K8gFtAKy.net]
そんなに面倒でもなくなったんじゃ無い?
https://qiita.com/jnchito/items/9de9e515f82dc1969cc5

623 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 00:36:42.77 ID:fUyWPXJG.net]
今のwindows版は環境ごと入れるので、rubyを使うためにperlやpythonまで入ってくるのが面白い

624 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 00:39:25.77 ID:riLnUYwW.net]
たしかに文字コード面倒
ファイルやデータも古い年代モノから最近のモノまでいろいろ、コードも混在
rubyも最新版ばかりでない、マシンによってバージョンが違う

625 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 00:46:43.95 ID:KxYle0qd.net]
WSLつかえばいいやん

626 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 00:53:24.63 ID:bbq6MBnq.net]
文字コードが面倒って言ってるやつは
CP932(ShiftJIS)を使おうとしてるから

UTF-8対応のエディタ(Windows 10ならメモ帳でいいんやで?)を
使ってソースコードにはUTF-8以外を一切入れない

コマンドプロンプトはchcpでUTF-8に変更するか
画面への入出力時に(Rubyではなく)nkfなどを使って変換すればいい

Rubyスクリプトへデータの入力はファイルから行って
出力もファイルに出力するなら、別にnkfでの変換もいらない
UTF-8対応のテキストエディタで見ればいい

なんで日本専用の文字コードを使おうとしているのかわからない
それだと他の国で使えないではないか。汎用的に作ったほうが
簡単になることって多いよ

627 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:00:18.00 ID:fUyWPXJG.net]
>>602
そういう話じゃないんだなあ
chcpなんて使い物にならないし
rubyの内部の作りの問題なんだよ
nodeやgoやrustはその辺まともに作ってある



628 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:09:23.83 ID:0kLiomIS.net]
そうそう
近代的なプログラミング言語は内部エンコーディングがUnicode固定だから本当にIOのときだけエンコーディングを考慮すればいい
一方Rubyは文字列の内部表現がStringオブジェクトごとのエンコーディングに依存していて、
自分の管理外のコードからStringを受け取る場面では必ずエンコーディングを考慮せねばならない

629 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:14:23.18 ID:bbq6MBnq.net]
>>603
> chcpなんて使い物にならないし

使い物になってるけど?
実際WSLはchcpでUTF-8したのと同等の環境で動いている。

文字化けする?フォントがおかしい?
だからWSLでまともに使えるようにするために
全部修正したんだってばw

630 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:18:39.80 ID:ro52D2nE.net]
>>602
全然判かっていないじゃないか
多くのWindows用アプリケーションはUnicodeもしくはCP932を前提に作られている。たとえコンソールのキャラクタコードを
UTF-8にできてRubyがそれに従ってくれたとしてもほかのアプリケーションとの連携で不具合が発生するのは明らかで
問題は解決しない

それにnkf使えとか1.8時代に逆戻りだろw

631 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:21:35.03 ID:bbq6MBnq.net]
多くのWindows用アプリケーションはUnicodeもしくはCP932を前提に作られている
それをRubの外部でnkfなどを使って変換すればいいだけの話だって言ってる

632 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:21:43.34 ID:fUyWPXJG.net]
>>605
いやだから、windowsはAPIでコンソールに出力してるから、そういう話じゃないんだって

633 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:26:42.15 ID:fUyWPXJG.net]
問題なのは、外部がユニコードの世界なのに、windows版のrubyは内部的にそうなってない所がまだあるのよ
内部で情報が欠落しちゃってるから、そこを変えないとまともにはならんわけ
windowsでは内部をUTF-8に決めちゃえばいいんだけどねえ

634 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:29:04.56 ID:bbq6MBnq.net]
>>608
APIでコンソールに出力してるから
なにがどうなの?

635 名前:610の続き mailto:sage [2018/08/09(木) 01:29:50.60 ID:bbq6MBnq.net]
ruby なんたら.rb

636 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:30:27.46 ID:fUyWPXJG.net]
>>610
だから、コンソールへ

637 名前:は普通にユニコードを書き出せてるからそこに問題があるわけじゃないんだよ []
[ここ壊れてます]



638 名前:610の続き mailto:sage [2018/08/09(木) 01:30:54.45 ID:bbq6MBnq.net]
>>611のコマンド|

639 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:31:25.52 ID:bbq6MBnq.net]
nkf CP932に変換するオプション

ってやれば、APIでコソンールに出力した結果が
UTF-8からCP932に変わるぞ。

640 名前:クソ5chのせいで書き込みテストしてた mailto:sage [2018/08/09(木) 01:32:23.81 ID:bbq6MBnq.net]
>>608
APIでコンソールに出力してるから
なにがどうなの?

ruby なんたら.rb | nkf CP932に変換するオプション

ってやれば、APIでコソンールに出力した結果が
UTF-8からCP932に変わるぞ。

641 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:35:28.21 ID:bbq6MBnq.net]
>>612
だから、RubyがAPIでコンソールに出力しようとしたものを
パイプで標準出力に変更して、nkfで標準入力からAPIで読み取って
nkfでSJISに変換してからAPIでコンソールに出力すればいいだけでしょ?

642 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:36:28.36 ID:bbq6MBnq.net]
「windowsはAPIでコンソールに出力してるから」が
意味不明なんで意地悪してみたw

643 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:38:12.71 ID:bbq6MBnq.net]
ruby なんたら.rb | [nkf CP932に変換するオプション]

って書くと書き込みできないんだなー
ってあれ?できた?おかしいなw

644 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:39:04.01 ID:fUyWPXJG.net]
めんどくせえなあ。SJISに変換とかアホみたいなことしなくても、WriteConsoleWってAPI使ってユニコードで書き出すようになってるんだよ

645 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:39:15.49 ID:bbq6MBnq.net]
クソ5chの意味不明な制限で書き込めないときは
わざと5chに負荷をかけて細かく分けて書き込むことにしてる
すべては5chが悪い

>>608
APIでコンソールに出力してるから
なにがどうなの?

ruby なんたら.rb | [nkf CP932に変換するオプション]

ってやれば、APIでコソンールに出力した結果が
UTF-8からCP932に変わるぞ。

646 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:41:07.24 ID:bbq6MBnq.net]
>>619
だからchcp 65001してれば、
WriteConsoleWってAPI使ってユニコードで書き出したものを
ちゃんと表示できるし、

chch 65001しなくても
WriteConsoleWってAPI使ってユニコードで書き出したものを
ruby なんたら.rb | nkf [CP932に変換するオプション]ってやれば
ちゃんと表示できるっていってるだろ

WriteConsoleWってAPI使ってユニコードで書き出した
からなんだって言うんだ?

647 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:42:44.19 ID:fUyWPXJG.net]
chcpする必要なんてないってことだよ
もういいかげんわかって



648 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:42:47.80 ID:bbq6MBnq.net]
rubyの中でCP932のデータを扱おうとするから
バカを見るんやで? rubyの外側で変換すればいい
文字コードの問題なんてなんもありゃせん

649 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:44:29.76 ID:bbq6MBnq.net]
>>622
あのな、

chcp 65001しないと、
日本語のWindowsではコマンドプロンプトが
互換性のためにCP932モードになってるから

WriteConsoleWってAPI使ってユニコードで書き出したものを
そのまま表示すると、UTF-8をCP932だと解釈して文字化けするんやで?

だからchcp65001しろって言ってるんだが

650 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:46:19.73 ID:bbq6MBnq.net]
ちなみにWindowsは内部はUnicode(UTF-16)で扱われている
これはずっと前からだ

651 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:47:15.18 ID:fUyWPXJG.net]
表示できてて、そこは問題じゃないって言ってるのに、そんなに問題があることにしたいのか

652 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:49:18.61 ID:bbq6MBnq.net]
>>626
それはRubyのソースコードがCP932になってるから、
俺は最初からRubyをUTF-8で書けと言ってる。

いい加減CP932から離れろよ。
そんなもんRubyの外部で変換すりゃいいだけの話なんだよ

https://www.rubylife.jp/ini/japan/index5.html
> そしてプログラムを保存する時は文字コードをUTF-8に指定して保存します。
>
> 通常はこれでいいのですが、Windowsで標準出力としてコマンドプロンプトを
> 使用している場合、コマンドプロンプトの文字コードがShift_JISのため
> そのまま「print」メソッドなどで出力すると文字化けします。

653 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:50:52.45 ID:bbq6MBnq.net]
RubyのせいにしたいのかWindowsのせいにしたいのか知らんが
結局文字コードについてちゃんと理解してないだけじゃねーかw

654 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:56:15.25 ID:p715oxsr.net]
これも全部文字コードが乱発されてるのが悪い
なんでこんなに増えちゃったん?

655 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 01:59:58.57 ID:bbq6MBnq.net]
アホメリケンが1ビットも惜しいとか抜かして
1文字で7ビットのASCIIコードを作ったのがそもそもの問題

最初から全世界の文字が入り切る24bitぐらいに
していればこんな問題は起きなかった

656 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 02:03:35.96 ID:bbq6MBnq.net]
今のUnicodeの全文字数を表すには、17ビットじゃたりないんだな
18ビットあればしばらくは対応できるだろうが十分かと言われると心もとないな
最低でも20ビットぐらいほしいかな

657 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 02:38:39.80 ID:ro52D2nE.net]
>>607



658 名前:
外部ツールを使うこと前提は普通対応しているとか使えるとはいわなくね?
WINEを使えばLinuxでも動くからLinux対応などとうたうWindowsアプリケーションはほとんどないし逆も同様
コードページをUTF-8にしろだのnkfをつかえだのナンセンスすぎる
Windows標準のキャラクタコードはUnicodeか日本ならCP932だし、変換もRubyで完結できるべきだ
[]
[ここ壊れてます]

659 名前:デフォルトの名無しさん [2018/08/09(木) 04:43:02.02 ID:V297VUOg.net]
なんや?
アンチはRubyの文字環境の設定もしらんのか?

しったかばっかりしとるツケやな

660 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 06:35:40.44 ID:DDec2yNS.net]
WindowsでRails開発してるけどcloud9使ってるからWindows環境に依存しない
そもそも環境構築すらいらん
クッソ楽だよ

661 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 07:06:07.44 ID:xHgFHFx+.net]
VSCode から、PowerShell を使えば、UTF-8 だから問題ない

ただし、Windows で、irb は日本語でバグるから使えない。
irb を使う時は、WSL から使う

662 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 07:30:43.69 ID:0kLiomIS.net]
おいおいRubyistはVSCode使っちゃダメだぞ
VSCodeはJSをわざわざ静的型言語に魔改造したTypeScriptによって作られている
そんなものをRubyistが使うということは、静的型の勝利を認めるようなものだ

663 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 07:35:03.56 ID:FPQoEIfF.net]
糖質乙

664 名前:デフォルトの名無しさん [2018/08/09(木) 10:40:37.59 ID:9RYWVA0H.net]
そんなこと言ったらそもそもさんざんバカにしてきたjavascriptで動いてるVSCodeなんて恥ずかしくて使えないだろw

665 名前:デフォルトの名無しさん [2018/08/09(木) 11:09:39.07 ID:NXkdt6vr.net]
>>603
chcp 65001 は糞だな
git for windows の bash 使うと utf-8 で統一出来る

666 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 11:25:09.25 ID:hJgBQsKI.net]
故Coffeeが押されてた頃以来しばらくRails触ってないから最新の事情に疎いんだけど、今のRailsでは生JSかbabelが普通?
さすがにまさかTypeScriptは意味不明なダブスタ状態になるからありえないとは思うけど

667 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 11:38:01.60 ID:FPeke3PG.net]
静的言語にものすごいコンプレックスあるんだな



668 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 12:45:27.94 ID:VXkLrSCu.net]
そうなんです
物凄いコンプレックスがあるんです
夜も眠れません

669 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 14:22:48.49 ID:ohdBTUS2.net]
そもそもWindowsで開発ってエンジニアとして恥ずかしいからやめな
ド素人専用OSだから

670 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 15:01:11.67 ID:SXE6an9g.net]
そんなこと言ったら、rubyで開発とか恥ずかしいよ

671 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 15:54:50.43 ID:cj+buD3F.net]
>>632
> 外部ツールを使うこと前提は普通対応しているとか使えるとはいわなくね?

対応して無くていいよ。Unicode(UTF-8)だけに対応していれば十分

672 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 19:54:10.11 ID:FPQoEIfF.net]
>>640
Webpackerが基本だから好きなの使えばよろし

673 名前:デフォルトの名無しさん mailto:sage [2018/08/09(木) 22:07:11.04 ID:VXkLrSCu.net]
Pythonが2018年も人気ナンバーワン言語に - Rubyは13位へ
https://www.softantenna.com/wp/software/ieee-spectrum-top-programming-languages-2018/

>日本生まれのプログラミング言語Rubyの順位は昨年の12位から13位へと一つ順位を落としています。

674 名前:デフォルトの名無しさん [2018/08/09(木) 22:10:32.15 ID:VXkLrSCu.net]
https://findy-code.io/engineer-lab/github-programming-language-ranking
↑「衰退するかもしれない言語」のRubyのグラフ凄すぎ

675 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 00:57:10.05 ID:brZGYtP0.net]
RubyInstallersのRuby + Devkit 2.5.1-2(x64) でインストールしたら
トロイの木馬検知したんだけど、これ大丈夫なんか……

676 名前:デフォルトの名無しさん [2018/08/10(金) 09:30:05.88 ID:YB7aDEkK.net]
基本、主流のレンタルサーバではどこもRuby標準

677 名前:部だろ
個人でやるならRubyしか手は無いぞ?
[]
[ここ壊れてます]



678 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 09:36:16.62 ID:umhN1xPo.net]
ここにもWindowsアンチがいますね

679 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 09:43:53.11 ID:6tv0/oL9.net]
pythonも標準装備です。
ただしどちらもかなり古いのしか入っていないです。
https://help.sakura.ad.jp/hc/ja/articles/206053142--さくらのレンタルサーバ-基本仕様

今だに1.8.7って・・・

680 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 09:57:36.47 ID:xFUN9Bm6.net]
>>650
管理者権限のないレンサバでやるとか拷問好きの変態だけだろ

681 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 10:15:24.49 ID:6tv0/oL9.net]
xxenvが使えりゃ取り敢えずなんとかなるけどな。
pathに嵌ったりするけど。

682 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 19:54:03.17 ID:zkC5iPOW.net]
今はVPSとかHerokuとかそういうの使う方が主流だよね

683 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 20:43:42.88 ID:USnz8/j9.net]
>>651
教祖がWindowsアンチだから仕方ない
残念だがRuby界においてWindows使いに人権はない

684 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 11:11:35.63 ID:7RaYhU06.net]
ヘロクくっそ高いからどうなんだろ

685 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 11:26:47.51 ID:XbF2QFnV.net]
宗教以外で今時Herokuを選ぶ理由はないでしょ
PaaSならGCPとかAWS Lightsailとかにしとけ
HerokuとAWS/GCPじゃスキルとしての価値にも差がありすぎる

686 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 11:35:49.25 ID:/QURPuCG.net]
へ、ろくなことないな

687 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 14:03:49.96 ID:4P7sy+nG.net]
へろくあさく



688 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 18:57:17.82 ID:Llo9t+It.net]
いやしかし機械学習という神風でPythonがRubyを吹き飛ばしたよね
特にこれから始めようとする人で、Ruby選ぶ人って激減なんじゃないかと

689 名前: mailto:sage [2018/08/11(土) 20:01:06.87 ID:vW2Ha+vq.net]
>>661
このお盆休みに Rails をやっているのだけれども…

690 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 20:43:53.14 ID:XIJj5NjC.net]
>>661
機械学習とWeb系は別物だからね
適材適所ということだね

691 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 20:58:17.22 ID:ZIqkCNIu.net]
Rails使う奴らが他言語使いを見下しているから嫌われるんだよ

692 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 22:08:57.73 ID:nLKVRTP/.net]
今更Railsはなあ
第2のPHPとして当分は健在だろうけど、もう美味しい時期をとっくに過ぎてRails専のエンジニアは買い叩かれてるのが現状

693 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 22:20:15.20 ID:3iVckqAr.net]
python用のwebフレームワークもいくつかあるけど、railsの出来には全然かなわんの?
rubyもnumpyとかあればなあ

694 名前: mailto:sage [2018/08/11(土) 22:27:06.60 ID:vW2Ha+vq.net]
>>665
みなPHPに移ったんですか?

695 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 22:33:39.18 ID:edehoOie.net]
>>666
Rubyの言語仕様はイカれてるからな。
よくもわるくも。

696 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 22:43:26.29 ID:XIJj5NjC.net]
>>666
Django が一番有名なんだろうけど、開発スピードは Rails の足元にも及ばないね

697 名前:デフォルトの名無しさん [2018/08/12(日) 01:48:34.69 ID:evL76NL4.net]
>>576,577
関数型プログラミングという視点であれば、JS は良い言語だね
どちらも出発点として関数型言語をベースに設計された言語だから、当然の帰結と言える:
 peace.5ch.net/test/read.cgi/tech/1409526637/857/

ただし、あえて「Rubyによる関数型プログラミング」に慣れると
JS にイラッと感じる(=楽しくない)のは:
・条件分岐の if/switch が(式ではなく)文であること
  Ruby であれば if/switch (を含め



698 名前:て「あらゆるすべて」)は式だから、ML や Haskell と同様、
  いちいち一時変数を持ち出さずに書ける
・匿名関数の function() は煩わしい
  匿名関数が多用されるのは map/filter といった関数を引数渡しするケースだけど、
  Ruby であればブロック引数という独特な構文があるから簡潔に書ける
ってことかな(あくまで個人の感想ですが)

ちなみに、これらの感想は以下の文書からの受け売りだったりします:
・Rubyによる関数型プログラミング
 (*1) URL はNGワード規制によってカキコできないので、
 もしも興味のある人は「Rubyによる関数型プログラミング Arnau Sanchez」でググッてください
なお、この文書で筆者は:
 Rubyは基本的には命令型言語であるけれど、 関数型プログラミングへの際立った潜在能力がある
と断じています

(*1):規制されるほど、この文書はム板管理者にとってヤバイ内容が含まれているんですかねぇ?
   2012年と5年も昔に公開された、今のRuby使いにとっては常識的な中身だと思うんですけど
[]
[ここ壊れてます]

699 名前:デフォルトの名無しさん [2018/08/12(日) 01:58:20.16 ID:km10YFtC.net]
def式じゃないじゃんjsのfunctionは式だぞ

700 名前:デフォルトの名無しさん [2018/08/12(日) 02:01:02.80 ID:evL76NL4.net]
>>577
>Rubyは第一級関数ではないという致命的な欠陥がある

JSとは異なり、Rubyだと関数は一級市民ではない」という指摘を
具体的なコードで示したのは、おそらく自分が最初だと思うけど:
 https://mevius.5ch.net/test/read.cgi/tech/1503644351/210/
そこでもカキコしたように「制限」であって「致命的な欠陥」ではないんだよね

>>670でも書いたように、一級市民としての関数が重要になるのは
メソッド(or 関数)の引数値として匿名関数を渡すケースだけど、
Ruby ではまさにその目的のためブロック引数という特殊な構文が用意されている

もし反論があるなら、具体的なコードで示したほうが理性的ではないかと思われます

701 名前:デフォルトの名無しさん [2018/08/12(日) 02:10:52.79 ID:evL76NL4.net]
>>671
関数型プログラミングを実践すると自然に匿名関数を多用することになるわけですけど、
JS はいちいち function とタイプしないといけないから煩わしい、という意味です

たとえば ML族の Standard ML だと fn、同 OCaml だと fun、Haskell に至っては
¥ が匿名関数を表すキーワードです
ここまで「JavaScript による関数型プログラミング」が普及し常識になった現時点で
振り返れば、function ではなく fn とか fun という予約語にできなかったのか?と

なお、関数宣言のキーワード function は、それが宣言を目立たせる意味で長いキーワードを
採用したと考えれば、納得できるのですけどね

702 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 02:47:33.34 ID:2UQfVx23.net]
Ruby にはブロックスコープがあるし、
関数スコープでは、関数外部からの変数を通さない

Rubyの偽は、false, nil の2つだけ

Rubyは厳格だけど、JS, Python, PHP などは、ややこしい

703 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 08:39:08.05 ID:PenCp7yX.net]
>>673
> JS はいちいち function とタイプしないといけないから煩わしい、という意味です

なるほど。ではこのコードのどこにfunctionがあるのでしょう?

var materials = [
'Hydrogen',
'Helium',
'Lithium',
'Beryllium'
];

console.log(materials.map(material => material.length));
// expected output: Array [8, 6, 7, 9]

704 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 10:53:04.11 ID:avkK3Y0e.net]
ruby狂信者に「他言語では…」って話しすると黙りこくって見下すのは経典に書いてるのか?
どんなruby狂信者に聞いてもど

705 名前:「つも同じ精神なのがものすごく気持ち悪い
アレなんなんだろうな
[]
[ここ壊れてます]

706 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 13:10:26.06 ID:Z9n0yF1g.net]
Rubyは左翼言語だからね

707 名前:デフォルトの名無しさん [2018/08/12(日) 13:15:59.90 ID:rtSL/abo.net]
>>664
見下される側なのにな



708 名前:デフォルトの名無しさん [2018/08/12(日) 13:22:05.89 ID:rtSL/abo.net]
>>670
rubyに関する内容がヤバイんじゃなくて
archive。fo
がだめなだけ

709 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:02:35.22 ID:YGBUsYMx.net]
>>675
それ、もうブラウザでも使えるんだっけ?
JavaScriptは新機能を使っていいかどうか、いちいち考えないとイカンのがめんどくさい。
なおRubyも、バージョンのよる差異がうざい模様。

710 名前:デフォルトの名無しさん [2018/08/12(日) 15:37:44.45 ID:f+bxV/sn.net]
rubyって昔複数引数取る関数
foo bar baz
って書けたよね。
でも今は
foo bar, baz
だよね。

711 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:50:08.86 ID:ZHEExUj+.net]
>>681
1.8.7でも foo bar baz は foo(bar(baz)) なんだね

712 名前:デフォルトの名無しさん [2018/08/12(日) 16:22:12.92 ID:evL76NL4.net]
>>675
失礼しました、ES2015(ES6)で導入されたアロー関数ですね
ということで、>>670 の:
>・匿名関数の function() は煩わしい
という項目に関しては取り下げます


>>680
調べてみると、主要なブラウザの最新版であれば利用できるようです
まあ JS も Ruby も新機能の扱いを「めんどくさい」とか「うざい」と
感じることはあります
ただし、どちらも「後方互換性の維持」という言語進化の基本原則を
遵守しているのは共通していますから「新機能を使わない」という
選択肢も残されているわけです

713 名前:デフォルトの名無しさん [2018/08/12(日) 16:28:13.10 ID:fdgGBvne.net]
bar が関数じゃなければいい

714 名前:デフォルトの名無しさん [2018/08/12(日) 16:28:29.68 ID:evL76NL4.net]
>>679
情報提供、ありがとうございます
MANGO板にて特定のページが規制されているのではなく、
サイト全体が規制されていることを確認できました

・NGワード絞り込みスレッド★118
 agree.5ch.net/test/read.cgi/mango/1533547792/324-326/

715 名前:デフォルトの名無しさん [2018/08/12(日) 16:34:41.05 ID:evL76NL4.net]
>>681
昔って、いったいいつの時代なんだろう
自分は 1.6 の時代だからかれこれ20年は使ってるけど、
foo bar baz と書けたという記憶が無い

もしかすると 1.4 とかそれ以前には書けたのかな?
興味深いね

716 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 18:33:45.33 ID:YGBUsYMx.net]
>>683
JavaScriptはともかく、Ruby は「後方互換性の維持」を遵守しないぞ。
バージョンアップは、過去のコードをだいたい壊す。
次も、文字列の原則immutable化が控えているだろ。

717 名前:デフォルトの名無しさん [2018/08/12(日) 18:46:02.88 ID:f+bxV/sn.net]
それはjs以外たいていみんなそうなんじゃ?pythonしかり。



718 名前:デフォルトの名無しさん [2018/08/12(日) 18:50:42.36 ID:U04Z7MLo.net]
>>168
今どきにbabelも使わずフロント開発してるところなんて業務系SIerくらいしかないでしょ

719 名前:デフォルトの名無しさん [2018/08/12(日) 18:59:19.04 ID:U04Z7MLo.net]
>>683 のミス

720 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 22:37:17.71 ID:YGBUsYMx.net]
>>688
互換性維持の優先が高い言語はあるぞ。
C,C++,C#,Perl5はずっと更新されてきてるが、過去のコードを壊したことがほとんどない。
RubyやPythonと違って、システムの重要なところを担ってる自覚がある模様。

721 名前:デフォルトの名無しさん [2018/08/12(日) 22:37:51.94 ID:evL76NL4.net]
>>687
>JavaScriptはともかく、Ruby は「後方互換性の維持」を遵守しないぞ。

いや、Ruby は(も?)新機能の導入には保守的ですよ
たとえば Ruby の特徴である既存のクラスの振る舞いを後から上書きできる
オープンクラス、これには利点と欠点が共存してるけど、これに対応しようとする
refinement の提案は「後方互換性の維持」を理由に却下され続けたけど、
その壁を乗り越

722 名前:えてようやく 2.1 で採用された

もしも遵守しない例があるなら、具体的なコードで示してね(>>675 みたいに)


>次も、文字列の原則immutable化が控えているだろ。

え、frozen_string_literal オプションがあるでしょ?


>>688
いやぁ、バージョンアップしたら Hello world すら構文エラーになる Python みたいな
言語などとは一緒くたにされたく無いですね

・Rubyの設計上の欠点とは何か?
 https://mevius.5ch.net/test/read.cgi/tech/1413113999/123-126/

Python2 の時点ですら全プログラミング言語でも人気トップ10、スクリプト系言語に限れば
圧倒的に首位を独走というメジャーな言語が、Hello world すら構文エラーになるという
基本原則「後方互換性の維持」を頭から無視したバージョンアップを断行するなんて、
過去のプログラミング言語の歴史を振り返ってもあり得なかった歴史的快挙(暴挙?)ですよ
とうていマイナー言語の Ruby なんかじゃあ到底まねできないですわ
[]
[ここ壊れてます]

723 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 22:53:39.94 ID:YGBUsYMx.net]
>>692
結局、互換を壊してるじゃん。w
そんなのは保守的と言わないんだよ。
多少の不満は飲み込んででも、過去のコードを重視しないといけない。
オプションで選択できるとか、いいわけにならん。

例が知りたきゃググれ。
スコープとかメソッドとかいろいろあって、思い出すのもバカらしい。

ま、それがRubyの道なんだろうから、それはそれでいいんだよ。
ヘンに言い繕わずに、互換性は低いと冷静に受け入れてれば。

724 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 23:37:02.17 ID:f4ISMjBp.net]
現実無視の机上の空論w
昔のC/C++コードを一切の修正なしで再利用できるケースが実際にどれだけあるというのだ

725 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 23:42:34.82 ID:2UQfVx23.net]
>>683
JS のアローと、function()無名関数は、スコープ・this の挙動が異なる

非同期処理などで異なる。
別のもの

JSは、Rubyの影響を受けて、ドンドン変化していく

726 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 01:14:37.00 ID:0A70z83v.net]
>>694
え?w

727 名前:デフォルトの名無しさん [2018/08/13(月) 05:17:38.38 ID:LxScEq40.net]
>>693
>オプションで選択できるとか、いいわけにならん。

では、以下のコードを python3 で動かす方法はあるんですか?
 https://mevius.5ch.net/test/read.cgi/tech/1413113999/126/
え、オプションすら存在しないのぉ???
オプションすら許さない >>693氏のオレ様基準に従えば、
いいわけ以前の「後方互換性の断絶」であり「致命的な互換性の問題」ですね


>例が知りたきゃググれ。
>スコープとかメソッドとかいろいろあって、思い出すのもバカらしい。

え、これだけ「Rubyはゴカンセイガァー」と騒いでおいて、
ご自身では具体的なコードすら書けないんですか?
情けないですね、自分ならスコープやらいくつかRubyに関する
「些細な互換性の問題」を示してあげることもできるんですけど


>ヘンに言い繕わずに、互換性は低いと冷静に受け入れてれば。

いやぁ JS と比較すれば互換性は低いですよ
あちらはECMAScriptという国際標準の強い縛りがありますからね
でも Hello world すら動かなくなる最底辺 Python と比較すれば遥かに高い

そもそも具体的なコードも示せないくせに、
ナゼか「上から目線で」オレ様理論を押し付けるのは、
Rubyアンチに共通する性癖ですね



728 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 08:54:49.38 ID:aWjwgJVg.net]
Selenium WebDriver を使って、Nokogiri で、DOM を構築して、
JavaScript(JS) を使って、そのDOMで、body 以下を更新しようとしたが、エラーになる

つまり、DOMの構築には、JSではなくNokogiriを使った。
なるべく、JSではDOMを構築したくない。面倒だから

p inner_body = %(<div class="thread">あ</div>) #=> "<div class=\"thread\">あ</div>"

jsCode = <<"EOT"
var element = document.querySelector('body');
element.innerHTML = "#{ inner_body }";
EOT

driver.execute_script jsCode # JavaScript を実行

ただし、下のように書くと、body以下は正常に更新される。
element.innerHTML = '<div class="thread">あ</div>';

違いは「\"thread\"」の、ダブルクォーテーションのエスケープなのかな?
Nokogiriで構築したDOMを、JSにどうやって渡せば良いのか?

729 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 09:17:49.80 ID:TQG/Mzv/.net]
> Nokogiriで構築したDOMを、JSにどうやって渡せば良いのか?

うん、でもいま面倒なことになってるよね?

730 名前:デフォルトの名無しさん [2018/08/13(月) 12:07:18.53 ID:BGJ7CoIJ.net]
>>686
試してみようと思ったんだけど1.6より前のバージョンどっからダウンロードすればいいんだ…
https://www.ruby-lang.org/en/downloads/releases/

731 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 13:11:20.37 ID:0A70z83v.net]
>>697
Rubyアンチアンチは、だからめんどくさいんだよな。
そんなに必死にならんでもええよ。w

732 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 20:08:09.68 ID:1mtdXF6K.net]
それがルビリスト
皆呆れてるだろうが
個人的にすごく良い流れなので
もっと頑張れ

733 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 20:18:46.74 ID:1mtdXF6K.net]
一言で言えば左翼と同じメンタル
何故そうなるかは長くなるから書かないけどな

734 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 21:11:49.15 ID:xCIuVPx6.net]
政治の話は無駄に荒れるからやめろ

735 名前:698 mailto:sage [2018/08/13(月) 23:52:36.83 ID:aWjwgJVg.net]
p inner_body = %(<div class="thread">あ</div>) #=> "<div class=\"thread\">あ</div>"

以下は、jsCode を、puts, p したもの

(A) element.innerHTML = "#{ inner_body }"; の場合

var element = document.querySelector('body');
element.innerHTML = "<div class="thread">あ</div>";

"var element = document.querySelector('body');\n
element.innerHTML = \"<div class=\"thread\">あ</div>\";\n"

(B) element.innerHTML = '<div class="thread">あ</div>'; の場合

var element = document.querySelector('body');
element.innerHTML = '<div class="thread">あ</div>';

"var element = document.querySelector('body');\n
element.innerHTML = '<div class=\"thread\">あ</div>';\n"

A は、" の対応が崩れるから、ダメ。
一方、B は正常に処理される

どうやれば、変数をBのように展開できるのか?

736 名前:デフォルトの名無しさん mailto:sage [2018/08/14(火) 00:10:36.77 ID:ALsxTVnQ.net]
'#{ inner_body }'

737 名前:698 mailto:sage [2018/08/14(火) 00:39:13.09 ID:6NKcX7Ow.net]
p inner_body = %(<div class="thread">あ</div>) #=> "<div class=\"thread\">あ</div>"

以下は、jsCode を、puts, p したもの

>>706 の、
(C) element.innerHTML = '#{ inner_body }'; の場合。
>>705 の(B) と全く同じになった!

var element = document.querySelector('body');
element.innerHTML = '<div class="thread">あ</div>';

"var element = document.querySelector('body');\n
element.innerHTML = '<div class=\"thread\">あ</div>';\n"

"#{ inner_body }"
'#{ inner_body }'

まさか、シングルクォーテーションで変数展開できるとは!
神!



738 名前:698 mailto:sage [2018/08/14(火) 00:47:37.74 ID:6NKcX7Ow.net]
5ch ブラウザみたいに、スレに書き込んである画像のURL を、
自動的に、<img> に展開して表示するものを自作している

Selenium WebDriver を使って、Nokogiri で、DOM を構築して、
JavaScript(JS) を使って、そのDOMで、body 以下を更新しようとしている

わざわざ、Sinatra, Vue.js などを使うまでもない。
標準添付ライブラリのERB は、使っても良いかも

739 名前:デフォルトの名無しさん [2018/08/14(火) 10:11:41.38 ID:UwXfpacN.net]
>>703
なるほど
腑に落ちる意見

740 名前:デフォルトの名無しさん mailto:sage [2018/08/14(火) 10:12:57.81 ID:QAItGFSf.net]
自演乙

741 名前:デフォルトの名無しさん [2018/08/14(火) 19:28:42.42 ID:0jKmoemw.net]
Action Cableを使用してるアプリってもうある?

742 名前:デフォルトの名無しさん mailto:sage [2018/08/14(火) 20:22:35.95 ID:cWcfj41B.net]
BIOSが夏時間に対応していると、OSの時刻までずれてしまう
これ比較的最近の話だからな


naitaku.hatenablog.com/entry/2017/04/06/012238

> RTCにはタイムゾーンや夏時間を扱う仕組みは一般にはありませんので、
> OS側でタイムゾーンや夏時間を管理することになります。
> (実はRTCに夏時間を扱う仕組みがあって誤発動したというのが今回の原因なのですが)

> RTC の Daylight Savings Enable (DSE) という機能について
> 現代のOSでは上で述べたようにタイムゾーンや夏時間を管理しているのですが、
> 昔(DOSとかの時代?)はOSはそんな賢い機能はなくRTCの時刻がそのままローカルタイムでした。
> そんな時代に夏時間を扱うためにハードウェア的に実装されたのが DSE という機能です。

> またブコメで「日本のタイムゾーンにしていれば夏時間は自動的にオフになるはず」というものがありましたが、
> DSEの設定値はOS上の夏時間の設定とは無関係です。OSは上で述べたように夏時間を管理していますので
> RTCが勝手に1時間進んだり遅れたりすることは想定していないはずです。
> したがって現代のパソコンではDSEは無効になっているのが正しいです。

743 名前:698 mailto:sage [2018/08/14(火) 23:59:51.71 ID:6NKcX7Ow.net]
p inner = %(a"あ"b) #=> "a\"あ\"b"

outer = <<"EOT"
'#{ inner }'
"#{ inner }"
'X'
"Y"
EOT

以下は、outer を、puts, p したもの

'a"あ"b'
"a"あ"b"
'X'
"Y"

"'a\"あ\"b'\n
\"a\"あ\"b\"\n
'X'\n
\"Y\"\n"

つまり、#{ inner } だけが変数展開されているだけ。
ヒアドキュメント内の、', " は、そのまま表示されているだけだった

744 名前:デフォルトの名無しさん mailto:sage [2018/08/15(水) 08:50:55.79 ID:WdeJX/bN.net]
Ruby FFIを使ったエクステンションの作り方
kazegusuri.hateblo.jp/entry/2014/03/02/192729

FFI(Foreign function interface)
コンパイルがいらない、多言語を呼び出すためのインターフェイス

RubyにおけるFFIは、libffi

こんなのがあるのか

Windows で、クリップボード機能を使おうとして、
win32-clipboard gem の文書を見ていて、FFIを見つけた

745 名前:デフォルトの名無しさん mailto:sage [2018/08/15(水) 09:06:42.26 ID:pqG57C1I.net]
だからなんだよいちいちうるせえな
リファレンス全部読んでこい

746 名前:デフォルトの名無しさん [2018/08/15(水) 23:20:26.11 ID:0fz536jj.net]
なにか嫌なことでもあったのかな

747 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 08:21:45.86 ID:IiF9TGTT.net]
str.chomp!.strip!

末尾の改行を削除して、先頭末尾の空白を削除するのを、メソッドチェーンで書いたけど、
chomp! は、改行がない場合に、nil を返すのでエラーになる

メソッドチェーンに出来ないから、分けて書くしかない

str.chomp!
str.strip!

nil を返す可能性があるものは、メソッドチェーンに出来ない



748 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 08:53:49.22 ID:6O1Mze69.net]
&.

749 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 09:05:20.86 ID:IiF9TGTT.net]
拡張子で、画像ファイルかどうかを判別する際に、
大文字の拡張子を、downcase で小文字に変換して判別していますが、これで良い?

それとも、String#casecmp を使う方が良いの?
どう書けば良いの?

file_extname = ".JPG"

# . を削除して、小文字にする
file_extname.delete!(".").downcase!

extnames = %w(png jpg jpeg gif) # 画像の拡張子
extnames.include? file_extname # 含まれている?

750 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 09:50:44.21 ID:QAd5iU0A.net]
>>717
str = " \tfoo\t \n" #=> " \tfoo\t \n"
str.strip! # => "foo"

751 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 13:00:48.11 ID:JKxb8y7B.net]
>>719
file_extname.delete!(".").downcase! は
file_extname.delete!(".")&.downcase!
とでもしないとfile_extnameにドットがない時にエラーになる
ドットから始まることが分かってるなら
hoge = file_extname[1..-1].downcaseとでもすべきだし
ドットから始まることが分かってないなら
file_extname[/\.\K[^.]+$/]的なことでもしないとだめ
そもそもfile_extnameを破壊的に変更するのがそもそも気持ち悪い

extnames = %w[jpg gif png]
path = '/hoge/fuga/hage.jpg'
file_extname = File.extname(path)
extnames.include?(file_extname[1..-1].downcase) if file_extname[0] == '.'

752 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 13:13:38.65 ID:JKxb8y7B.net]
ていうかこのくらいの処理なら正規表現で書くわ

file

753 名前:s = [
'/hoge/fuga/piyo.jpeg',
'/hoge/fuga/piyo.piyo.JPg',
'/hoge/fuga/png',
'/hoge/fuga/gif.txt'
]

files.each {|f| p f.match?(/\.(?:jpe?g|gif|png)\z/i) }
#=> true
true
false
false
[]
[ここ壊れてます]

754 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 17:05:40.50 ID:dflIWUnx.net]
Ruby de GUI for Windows
RScript(ActiveScriptRuby)→良くも悪くもHTA、要インストール、最新版に追従していない
wxWidgets(wxRuby)→高機能、環境構築が面倒、機能によっては罠があったり不安定だったり、コントロール類のデザインに手間がかかる
Tcl/tk(Ruby/Tk)→導入が容易、機能面はwxRubyに劣る、コントロール類のデザインに手間がかかる
fiddle(WindowsAPI)→何でもできる、配布サイズが小さい、茨の道
(Webブラウザ組み込み型→現状なし?、出てきたとしても配布サイズの肥大化は不可避)

755 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 18:56:52.96 ID:wbWtiV7F.net]
>>723
FXRubyとかはどうなん?

756 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 20:14:41.09 ID:R55yZ6lr.net]
拡張子発明したやつ天才だわ
名前にファイルの種類を埋め込むとか一見ダサそうだけど理にかなってる
一方でマックバイナリは糞だわ

757 名前:デフォルトの名無しさん [2018/08/16(木) 20:28:51.12 ID:yarUS0V8.net]
RubyやRailsの認定試験は役に立つ?



758 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 20:33:53.69 ID:R55yZ6lr.net]
拡張子の何が凄いって
あくまでそれが何であるか種類を表しているだけで
どう扱われるかはOSの設定次第ってところ

これがRubyみたいな古い考えの頭のやつがやると
ファイルは自身がどう扱われるべきか知っているべき
とかアホみたいなこと考えだして
マックバイナリみたいな糞が出来上がる
だが実際には拡張子ぐらいが一番使いやすい

759 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 23:39:01.83 ID:IiF9TGTT.net]
>>721
>file_extname.delete!(".")&.downcase!
&. こういう演算子が出来たのか

Ruby の &. と #try の違い
secret-garden.hatenablog.com/entry/2016/09/02/000000

Ruby 2.3 で、Safe Navigation Operator(&.)という新しい演算子が追加された

760 名前:デフォルトの名無しさん [2018/08/17(金) 23:46:41.00 ID:Ho6XjkKO.net]
シンボルリテラルってなんのためにあんの?

761 名前:デフォルトの名無しさん mailto:sage [2018/08/18(土) 00:19:00.23 ID:Aune6CZV.net]
>>729
メタプログラミングのため
ソース上に現れる変数名やメソッド名とかってソースを解析する時点で全て把握できてるわけだから、
それを予め数値に置き換えてしまうことで効率よく扱おうという伝統的なコンパイラ技法があるんだけど、
Rubyはメンバ検索の動作を独自に定義できたりするので、その置き換え後の数値をRuby上のデータとして扱えなければならない
そのために用意されてるのがシンボルオブジェクトでありシンボルリテラルである
一方で、数値じゃなくて変更不能な文字列を使えばそんなもん要らなくね?という説もあって、実際Matzもそうすべきだったと失敗を認めている
というわけで、今となっては変更不能でちょっと不便な文字列のようなもの、以上の意味はない

762 名前:デフォルトの名無しさん mailto:sage [2018/08/18(土) 00:44:14.43 ID:Aune6CZV.net]
ちなみにRails専用DSLに成り下がって以降のRubyではRailsの影響でシンボルをキーにしたHashを引数に渡すということがよく行われるけど、
これはクォーテーションより:の方が書くのが楽だからとか、
文字列よりシンボルをキーに使ったほうがハッシュの検索が速いと信じられていた(今のRubyではこれは正しくない)からといった
あまり本質

763 名前:的でない理由によるもので、シンボルじゃなくて文字列でも何の問題もないよ []
[ここ壊れてます]

764 名前:デフォルトの名無しさん mailto:sage [2018/08/18(土) 01:15:49.75 ID:oFUm5YlZ.net]
>>729
不変性と同値時の同一性が保証された文字列は便利でよく使うから

不変だと特にハッシュのキーとして安全に運用できる
多数出現する同値を同一にできるとメモリが節約できる

765 名前:デフォルトの名無しさん [2018/08/18(土) 13:39:59.13 ID:L9SCjUBJ.net]
>シンボルじゃなくて文字列でも何の問題もないよ
うわあああああw

766 名前:デフォルトの名無しさん mailto:sage [2018/08/18(土) 14:45:55.55 ID:h7OdrOPI.net]
frozenになるだけでオブジェクトは別に作られるのかと思ったらこれじゃ本当にSymbolと変わんねえなw
でもSymbolもなんだかんだ好きだけど

ruby --enable=frozen-string-literal -e 'p 1000.times.map{"foo".object_id}.uniq'
#=> [20966820]

767 名前:デフォルトの名無しさん mailto:sage [2018/08/18(土) 14:49:31.46 ID:h7OdrOPI.net]
あもともとfrozenな文字列は使いまわしてたのか
$ ruby --disable=frozen-string-literal -e 'p 1000.times.map{"foo".freeze.object_id}.uniq'
[20983260]



768 名前:デフォルトの名無しさん mailto:sage [2018/08/18(土) 16:08:23.94 ID:Aune6CZV.net]
>>733
MatzがしれっとSymbolをStringのサブクラスに変更しようとしたの知らんのか
結局互換性の問題でMRIメンバーから大反対されて却下されたけど、
今Rubyを完全に再設計するならまず間違いなくシンボルリテラルは単なる文字列になり、Stringは常に変更不可になる
Railsのパフォーマンス改善のためにRubyに導入されたシンボルGCなんて、
それこそ本来のシンボルの意味からすると全く必要ないはずの馬鹿げた機能だ
もはや誰が見てもSymbolは事実上単なる文字列

769 名前:デフォルトの名無しさん [2018/08/18(土) 18:57:05.66 ID:IyhzoKxX.net]
最下位bit使って
整数の範囲を減らしてまで
シンボル空間作ったのに
互換性無いですかそうですか

770 名前:デフォルトの名無しさん [2018/08/18(土) 21:19:08.78 ID:NYofKyoT.net]
>>731
>メタプログラミングのため

後半の内容とは何ら関係しない
覚えたてのメタプログラミングって単語を使いたいだけちゃいますか


>Railsの影響でシンボルをキーにしたHashを引数に渡すということがよく行われるけど、

Railsで最初にRubyに触れた人にとってはそう感じるだろうけど、
ハッシュのキーとしてシンボルを使うのはRails以前から普通だったよ


>>736
>Railsのパフォーマンス改善のためにRubyに導入されたシンボルGCなんて、

シンボルGC導入のきっかけは(ブルートフォース攻撃に対する)セキュリティ対策だよ
パフォーマンス改善のために導入された文字列のfrozenデフォ化とごっちゃにしてる

771 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 00:22:38.83 ID:EuNb7t2q.net]
>>735
String#intern

772 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 00:23:34.71 ID:EuNb7t2q.net]
>>736
ヤツはホンマ互換性を軽視する輩やな。。。

773 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 01:31:27.62 ID:wM6XArJ0.net]
Selenium WebDriver, Nokogiri を使って、文字列からHTML を作って、
それをJavaScript で実行して、DOM を更新しているけど、
こういう原始的なやり方で良いのかな?

もっと、ERB とか、Vue.js みたいな、UI コンポーネント指向の書き方はできないのかな?

doc = Nokogiri::HTML(driver.page_source)
content_wrapper = doc.at_css("#content") # 全体の枠

# 画像ノード
img_wrapper_str = <<"EOT"
<div class="img_wrapper"><img></div>
EOT

picture_urls.each do | pict_url | # 画像のURL
img_wrapper = Nokogiri::HTML::DocumentFragment.parse img_wrapper_str

img = img_wrapper.at_css "img"
img.set_attribute('src', pict_url) # 属性

img_wrapper.parent = content_wrapper # 親
end

jsCode = <<"EOT"
var elem = document.getElementById("content");
elem.innerHTML = '#{ content_wrapper.inner_html }';
EOT

driver.execute_script jsCode # JavaScript を実行

774 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 08:45:22.44 ID:vb2L7br6.net]
すいません、

775 名前:プログラミングの世界に最近初めて入ったんですけど
C++やろうとしたら別のスレでRubyとjava勧められたのでやろうと思ってるのですが
Rubyはプログラム初心者に向いてますか?
それと実行環境はVisualStudioを使えますか?
この2点教えてください
[]
[ここ壊れてます]

776 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 08:50:30.37 ID:5Q8kr7ts.net]
>>742
Rubyは開発陣がWindowsアンチばかりでWindowsとRubyは極めて相性が悪い
初心者云々以前に、Macに乗り換える気がないならRubyは論外
WinでスクリプトならPythonにしよう
絶賛落ち目中のRubyよりよほど将来性があるし初心者にもわかりやすいしWinで使いやすいしVisual Studioでもサポートされている

777 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 09:23:19.37 ID:f0B2PJq7.net]
アホか初心者が戯れにやる程度ならrubyもpythonも大差ねえよ



778 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 09:52:05.30 ID:wM6XArJ0.net]
RubyInstaller for Windows がある。
エディタは、VSCode

ただし、Windowsで、irb を使うと、日本語でバグるから、
irb だけは、Windows10 なら、WSL でLinux(Ubuntu)側から使う

paiza.IO, codepad などのサイトで、ブラウザからプログラミングするのが簡単。
他には、progate という学習サイトもある

環境構築には、数十のLinux コマンドも覚えるべき。
絶対・相対パス、環境変数PATH の仕組みなども知らないと無理

ruby -v
例えばこういう、ruby のようなパス無しのコマンドを入力すると、
どういう仕組み・順序で、PC 内から、そのコマンドの実行ファイルのある場所を探し出すのか?

つまり、こういうOS の知識がないと、
コマンドプロンプト・PowerShell などのシェルを使えない

ほとんどの人は、これらの勉強ができず環境構築ができないから、
環境構築のいらない、Excel エンジニアになるしかない!

つまり、プログラマーにはなれない人!

779 名前: mailto:sage [2018/08/19(日) 10:20:51.08 ID:bW/fB7v7.net]
>>742
C++ をやるんだったら Java にすればいいと思います

780 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 10:58:48.68 ID:vb2L7br6.net]
>>743
そうなんですか。Win10使ってるんですけどやめたほうがいいですか...
別スレでC++始めるならまずたのしいRuby 第5版、2016 とスッキリjavaやってからにしとけって言われたので
聞いてみたのですがあまりよろしい選択ではなかったですか。
色々調べてみるとrubyは簡単な言語の上位にランクインしてたので覚えやすいのかなって思ってたんですが

PythonはVisualStudioで出来るんですね。いいこと教えていただきありがとうございます。
>>745
一応VisualStudioでRubyもやれるんですか
LinuXはOS?ですか?あまり良くわからないんですが、かなり敷居は高そうですね……
paiza等もブラウザで出来るみたいなんですが入力とかクラスとかの機能が使えないみたいで
色々不自由しそうで、なるべく実行環境整えたいのですが、今の段階では厳しいですか。
教えていただきありがとうございます。

781 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 11:04:10.79 ID:dO2iwij6.net]
今の覚えるならpythonの方がいい
悪いことは言わない勝ち馬に乗れ

782 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 11:07:38.97 ID:f0B2PJq7.net]
>paiza等もブラウザで出来るみたいなんですが入力とかクラスとかの機能が使えない
そんなことはない普通に使える
実行環境構築に自信がないならブラウザコンソールからJavascriptやっとけ

783 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 11:08:29.44 ID:vb2L7br6.net]
>746
別スレで教えていただきjava環境導入出来ました。ありがとうございます!
せっかくお勧めの入門書2冊教えてもらったので両方の言語やろうかなって思って聞いてました
少しでもC++の理解が簡単になるならやっとこうと思ったんですけど無意味ですかね

784 名前: mailto:sage [2018/08/19(日) 11:17:54.14 ID:bW/fB7v7.net]
>>750
無意味ではないですよ… []
[ここ壊れてます]

786 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 11:20:28.30 ID:vb2L7br6.net]
>>748
そこまで本格的にやる予定ではなくて,
別スレでプログラム0から始める奴がC++からやっても理解できない。
たのしいRuby 第5版、2016 とスッキリ分かるjavaやってからにしろ!って言われて
少し遠回りしてでもやろうと思ってたんですが、今聞いた感じだとあまり入門者がやる言語ではないみたいですかね…
pythonとjavaとりあえずやってみます。ありがとうございました

787 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 11:28:00.78 ID:oQXHWYB7.net]
C++やるつもりならなおさらPythonがおすすめだな
Pythonは設計思想が比較的C系に近いからC++やJavaにも馴染みやすいよ
RubyはRubyが最高だと信じて閉じ籠って他の言語やりたがらない人が多い



788 名前:745 mailto:sage [2018/08/19(日) 11:42:35.15 ID:wM6XArJ0.net]
「たのしいRuby」「スッキリjava」は薦めたのは、俺だよ

Windows のユーザー・システム環境変数の設定画面を使えないと無理。
この画面の環境変数PATH を、穴のあくほど見つめる。
新しく何を追加したのか

絶対・相対パスの違い。
これがわからないと、VSCode で、PowerShell から実行できない

cd, ls などの、基本的な20ぐらいのLinux コマンドも覚えるべき。
PowerShell でも、そのまま使えるから。
例えば「cd ..」これの意味がわからないと、PowerShell を使えない。
コマンドプロンプトはややこしいから、なるべく使わない方が良い

C++ なんて、5年以上先の話。
環境構築できないと無理

paiza.IO, codepad などのサイトで、ブラウザからプログラミングするのを薦める。
progate という学習サイトで学習する人も多い

789 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 11:46:50.09 ID:ql2A++ig.net]
この人アレな人なんでアドバイス無視していいよ

790 名前:745 mailto:sage [2018/08/19(日) 11:50:54.76 ID:wM6XArJ0.net]
「たのしいRuby」「みんなのPython」「スッキリjava」の3冊を読めばよい

「たのしい・みんなの」の2冊は双子。
ただし必ず、たのしいから読むこと!
みんなのから読むと、わからないから苦戦する

ただし、みんなのは、AI・機械学習しない人には、無駄が多い。
ウェブ系なら、たのしいRuby

HTML, CSS, JavaScript も必要

791 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 11:59:42.65 ID:EuNb7t2q.net]
今からJavaをするくらいなら、C#をしたほうが一億倍はいいと思うが。
とくにWindowsなら。

792 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 12:01:03.16 ID:AHbKk0RR.net]
>>742
プログラミング言語は道具だ。道具を使って何をしたいか(目的)が重要なのではないのかな
逆に目的が決まれば適したプログラミング言語も自然と絞られてくる
なんとなくならメジャーなのをやっておけとしか・・・

793 名前:745 mailto:sage [2018/08/19(日) 12:04:48.91 ID:wM6XArJ0.net]
例えば、C++ のロベールを読むよりも、

「たのしいRuby」「みんなのPython」「スッキリjava」の3冊を3回読む方が、
はるかに速く読めるし、得るものも大きい。
50時間もあれば、全部読める

一方、C++ で50時間使っても、ほとんど何も作れない。
やってみればわかるけど、時間の無駄

C/C++ などポインタがある言語は、すぐにバグるから、すごく時間を損する

794 名前:745 mailto:sage [2018/08/19(日) 12:52:39.81 ID:wM6XArJ0.net]
https://rubyinstaller.org/

Ruby Installer を使うなら、2.4 系を使う。
2.5 系は、まだ新しいから使わないように

irb は日本語でバグるから、使わないように。
使うなら、WSL でLinux(Ubuntu)側で、irb を使う

VSCode もインストールして、Rubyの拡張機能も入れてみれば?

795 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 13:14:24.10 ID:CsoxUTBy.net]
環境変数がわからないのはともかく自分で調べて理解できないレベルなら諦めろ

796 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 13:31:40.72 ID:CkJFwlQB.net]
これが参考になると思う
https://pbs.twimg.com/media/DjCWzQYU4AAng_H.jpg

797 名前:デフォルトの名無しさん [2018/08/19(日) 13:35:43.71 ID:plhuPGbS.net]
web上では見たことあるけど
出版物上で観るのは初めて感



798 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 14:15:20.06 ID:qqMgBYp8.net]
なんやこれw

799 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 14:21:25.19 ID:OBahve6K.net]
プログラミング経験0ならこっちから始め

800 名前:スほうが良くないか?
https://www.nhk.or.jp/school/programming/start/index.html
[]
[ここ壊れてます]

801 名前:745 mailto:sage [2018/08/19(日) 14:30:49.79 ID:wM6XArJ0.net]
言語の初心者用の本は、PCの初心者用の本じゃない!

言語の本はあくまで、その言語を知らないだけで、
環境変数とか、絶対・相対パスとか、cd, ls などの基本コマンド、
PowerShell の使い方などは、知っている事が前提

こういうOS の知識を、教えている本はない。
それを書けば、言語を説明するページが減るから、書かない

つまり言語の本は、PCの初心者を対象としていない!
既に、OS の知識はあって、その言語だけを知らない人向け

802 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 14:42:48.43 ID:OBahve6K.net]
そういう人のためにはお膳立ての澄んだIDEが一番良いんでない?

https://forest.watch.impress.co.jp/docs/news/1133620.html

803 名前:745 mailto:sage [2018/08/19(日) 14:46:26.87 ID:wM6XArJ0.net]
762 みたいな本を書いている奴は、勉強を何もわかっていない。
なぜ生徒が、プログラミングを嫌うか

言語には、勉強する順番がある。
小学生にいきなり、大学教育をしても無駄。
小中高大学と、個人の成長には、勉強する順番が重要。
知識を下から、積み重ねていかないといけない

1. 動的・軽量言語
Ruby, Python, JavaScript

2. 静的言語
Java, Kotlin, C#

3. ポインターのある言語
C, C++

今の大学教育では、C から教えているから、皆プログラミングはしょーもないってやめる。
これは、Rubyの女神・女優の池澤あやかが言ってる

804 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 15:14:41.19 ID:CsoxUTBy.net]
>>768
教養時代に必修科か準必修科目でRubyやったぞ
薬学とか農学部進学予定の奴までやってたのはかわいそうだったけど

805 名前:デフォルトの名無しさん [2018/08/19(日) 15:33:42.02 ID:aRJ7Tr37.net]
>>753
つまり、Python信者は他言語スレまで出張してPython推しするほど必死だと

806 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 15:39:09.36 ID:EuNb7t2q.net]
>>769
今日日、農学志望の人はRubyくらい使う機会があるかもね。
集計統計とか農業IoTとかで。

807 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 16:00:26.64 ID:wM6XArJ0.net]
ラズパイでは、Python も良いけど

ウェブ系では、Ruby が強い。
Rails から、Vue.js, React も使える



808 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 16:15:56.38 ID:+KX+Ofsb.net]
ルビィストとか世界中が失笑してるから

809 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 16:29:07.49 ID:CsoxUTBy.net]
>>773
失笑って言葉の意味まちがってるぞハゲ

810 名前:デフォルトの名無しさん [2018/08/19(日) 16:35:26.45 ID:plhuPGbS.net]
プッ

811 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 16:46:14.03 ID:j789RV8B.net]
>>770
言語なんか複数使えて適宜使い分けられて当然でしょ

812 名前:デフォルトの名無しさん [2018/08/19(日) 17:01:32.24 ID:aRJ7Tr37.net]
>>743
つまりPython推しのためであれば、他言語スレでの荒らし行為も正当化されると
いやあPython信者って怖いですね

813 名前:777 [2018/08/19(日) 17:02:42.12 ID:aRJ7Tr37.net]
アンカミスを訂正:
 X:>>743
 O:>>776

814 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 20:07:29.27 ID:xR7/CWZ6.net]
俺はPythonよりRubyの方がずっと好きだけど
(Railsプログラマーを目指してるんでもなきゃ)
これから何か始めようって人には断然Pythonを薦めるし
自分のお気に入りだからってむやみにRubyを薦める奴の見識は疑うね

815 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 20:49:04.45 ID:OBahve6K.net]
CASL II/COMET IIでアセンブラの基本を学んでいるとポインタで死ぬことはなくなる。
序でに基本情報の試験にそのまま使える。

https://www.jitec.ipa.go.jp/1_20casl2/casl2dl_001.html

816 名前: mailto:sage [2018/08/19(日) 21:12:05.24 ID:bW/fB7v7.net]
>>780
CASL なんて覚える気になりません、といって、x

817 名前:86 のいい教科書がありませんね
誰か書いてほしい
[]
[ここ壊れてます]



818 名前:デフォルトの名無しさん [2018/08/19(日) 22:30:32.56 ID:aRJ7Tr37.net]
>>779
つまり:

 俺はRubyよりPythonの方がずっと好きだけど
 (機械学習プログラマーを目指してるんでもなきゃ)
 これから何か始めようって人にRubyを薦めることもあるけど
 自分のお気に入りだからってむやみにPythonを薦める奴の見識は疑うね

ってことですね
Python信者の皆様、お勤めご苦労様です

819 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 22:56:05.02 ID:xR7/CWZ6.net]
>>782
そりゃひねくれすぎだろ…お前いったい何と戦ってんの?

ただでさえRubyの評判は落ち目なんだから
狂信者が必要以上に貶めるのはやめにしてほしいわ

820 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 23:09:03.67 ID:wM6XArJ0.net]
>>780-781
2人のイリノイ大学生が使った、LLVM に世界が飛びついたけど、
日本では既に情報処理資格に、仮想アセンブラ CASL2 があった

LLVM/Clang 実践活用 ハンドブック、出村成和、2014

詳説 Cポインタ、2013、オライリー・ジャパン

OSのすべての機能を学びたいなら、ムック本の
Linuxエンジニア養成読本、第3版、2016

821 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 23:56:53.17 ID:/dQ+RHN7.net]
>>752
プログラミングの基本って、
・変数への代入、関数(メソッド)の使い方
・配列、ハッシュ(連想配列)とかのデータ構造
・値の比較と条件分岐(if文とかswitch文)
・繰り返し処理(do while文とか)
こういうのだけど、これはどの言語にもあるものだから、
一度覚えればほぼそのまま使い回しがきく。
(if文じゃなくてif式、とか若干の違いを言語ごとに覚えるだけ)

あとは「オブジェクト指向」の考え方というか、
概念みたいなのを理解できてれば、
どの言語に移ってもそんなに苦労せず使えるようになる。

で、そういう基本は、C++でもJavaでもRubyでもPythonでもJavaScriptでも、
どれやったって学べるわけだけど、
最近は3DCGのアプリとか、機械学習とかのジャンルで
Pythonが採用されるケースが多いので、
ゼロから始めるなら使い道の多いPython、みたいな意見がどうしても多くなる。
(Rubyは使いやすい言語だけど、Webサイト構築以外での採用例があまりない)

けど、「自分のやりたいこと」がなにかを決めた上で、
「それを最短距離でできる言語はどれか」を
詳しい人に教えてもらって始めるのが一番おすすめ。
(自分のやりたいことがC++でないとできないなら、最初からC++をやるべき)

特にやりたいことがなければ、
本屋で各言語の入門書をいろいろ立ち読みして、
自分が理解できそうな言葉で書いてあるやつを選んで始めれば、と思う。

ちなみにPythonもJavaも、初心者が学ぶ言語としては
悪くない選択肢です。

822 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 00:34:57.15 ID:6r2cvJMF.net]
>>785
Pythonは3DCGでは最近じゃないから
ほとんどの奴がPythonの存在を知らないときから使われてる

823 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 01:03:33.27 ID:OYF5TU4U.net]
ツール組み込みのPythonは未だに2だったりするんじゃないの?

824 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 01:43:39.45 ID:ul3gEuNL.net]
組み込みだとLua、mruby、JavaScriptあたりも使われている

825 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 06:59:19.60 ID:1lIz0FhB.net]
しれっとmrubyを混ぜるな
mrubyなんか誰も使ってない

826 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 10:03:01.56 ID:1nsldRzy.net]
まぁ古参はC、下手したらアセンブラからの経験者で
トレンドに合わせてステップアップしながら言語を覚えただろうから
初心者が何の言語から勉強するべきかなど分かるはずもないんだよな

シンプルで覚えることが

827 名前:ュなく今なお第一線級で活躍している言語なら間違いなくC言語
C言語ほどシンプルで実用性のある言語はない
OSが書かれてる本物の言語ってだけでもモチベーションになる
全ての実用言語の元になってると言えるし、最初にやるには良い言語だ
良くも悪くも

一方で楽しさ優先なら間違いなくC#でポトペタ開発でしょ
めちゃ楽しいが、WPFなどの背景にある仕組みの複雑さに挫折するかも
でも触ってて楽しいだろうなぁ、画面作るだけならマウスだけで出来るし

あぁRubyとかPythonとかは寄り道みたいなものだから最初にしなくてよいよ、ハマるから
動的型のスクリプト言語など色物なのに、最初にやるとか、どうかと
俺は絶対おすすめしないね、プログラミング言語の本流じゃないからね
特にここ10年は静的型が本流ってみんな知ってるだろ、いじわるめが
[]
[ここ壊れてます]



828 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 10:13:16.57 ID:1nsldRzy.net]
あと、環境設定がどうとか、約一名盛り上がっているようだが
そういう人にはVisualStudioがおすすめだろう
これだけ完成度の高いソフトが無料で使えるのは凄すぎる
トータルで言えば、初心者におすすめなのは
VisualStudioとC#でポトペタ開発って事になるのかな
でもまあ、C#もバージョンがどんどん上がって今やとても複雑な言語だからなぁ
ソフトウェア業界が10年20年かかって常識にしてきたことを
一気に追体験しようというのはなかなか酷だわな
本当はC言語とWin32APIあたりから始めるのがシンプルで理想なんだが
モチベーションがつづくかな、それさえ気にしなければよい選択なんだが
どちらにせよ、RubyやPythonのような本流主流じゃない言語を最初にやるのは止めたほうが良い
筋が悪い、悪かった、というか悪いお手本みたいな言語だから

829 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 10:21:38.59 ID:1nsldRzy.net]
手続き型言語でプログラム書くなら、どのみちメモリのことは意識しなければならないし
ポインタが分からないって時点でプログラマには向いてないというか何というか
ただ、結局、安全かどうかなんだよ
その点C言語は安全とは言い難いが
意図せずヌルポするのはヌル安全の機能が無い言語ではどれも同じようなものじゃろ

その観点から言うと、単なるタイポすらコンパイル時にチェックしてくれない
動的型言語は初心者に進めるのは止めたほうがよい
初心者ほどタイポするだろうからな
それが言いたかった

830 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 10:42:27.70 ID:Xyz1Vf46.net]
今北産業

831 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 11:29:47.95 ID:fD9Nu4LZ.net]
長い上に気持ち悪い
やっぱ長文はNGに限る

832 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 14:25:35.47 ID:zY8py34F.net]
自分語りするおっさん登場

833 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 15:18:21.21 ID:qTCaqW3V.net]
>>792
> 単なるタイポすらコンパイル時にチェックしてくれない動的型言語

(きっとRubyのdid_you_meanはおろか70年代のLispにすらあったDWIMも知らないんだろうな…)

834 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 15:23:07.09 ID:GIvuOFoC.net]
>>796
そのdid_you_meanはコンパイル時(プログラム実行前)に
チェックしてくれるのかい?w

835 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 15:30:49.82 ID:1nsldRzy.net]
とにかく、初心者はプログラムを間違えるものなんだよ
一発で動くことは先ずない
それならコンパイルの時点でよりたくさんのエラーを検出してくれた方が学習が捗るだろ?
初心者にRubyなんか薦めるなって事だ
その人を蹴落としたいなら別だが

836 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 16:35:54.31 ID:fD9Nu4LZ.net]
REPLにコンバイルもくそもねえだろ

837 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 16:37:08.70 ID:cqDBbZn3.net]
まず多少なりとも動いてくれたほうが楽しいので学習が捗りました(経験談



838 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 16:43:09.37 ID:GIvuOFoC.net]
>>799
重要なのはプログラム実行前ってこと

839 名前:セよ
静的とも言う。

実行した後はいろんな状態があり得るが
実行前というのは状態は一つだ。

つまりいろんな状態にしなければわからないというのは
問題を発見するまでに果てしなく時間がかかるということ
だからなるべく実行前にわかるようにするのが良い
[]
[ここ壊れてます]

840 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 16:47:09.67 ID:fD9Nu4LZ.net]
いやeval getsするだけで可能性は可算無限でしょ
eval gets
p A
# input
A = 'hoge'
とかどうすんのよ

841 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 17:27:42.07 ID:dpL1lU0R.net]
>>797
動的型言語かどうかは関係ない
Smalltalkの“confirm, correct, or cancel”はコンパイル時チェック

842 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 17:45:25.99 ID:GIvuOFoC.net]
>>803
Smalltalkのコンパイルっていつやるの?

843 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 17:46:25.89 ID:GIvuOFoC.net]
プログラム実行前って言ってるのに理解してなさそうw

844 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 18:09:19.60 ID:1nsldRzy.net]
何だったらコンパイル時どころか
最近のエディタだったら書いてる途中でリアルタイムで文法チェックするからな
間違ってたら波線とか出る
そういう状況なので、なるたけ多くのことが静的にわかったほうが良いんだよ
実行時にエラーにするなら馬鹿にでもできる!!って思うし
やってみてダメでしたってな、バカっぽいでしょ
事前に分かるから賢い

845 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 18:38:05.12 ID:NYBtZzEL.net]
>>804
メソッドを書き終わった後(accept、つまりコンパイル指示を出したとき)だよwwww

846 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 18:44:32.10 ID:GIvuOFoC.net]
>>807
その時にSmalltalkは動いているのかどうかって話だ
動いてるだろ

847 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 18:50:47.34 ID:fD9Nu4LZ.net]
このスレって質問者をほっぽりだして変なのがしゃしゃり出てくること度々あるよな



848 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 19:32:53.62 ID:NYBtZzEL.net]
>>808
IDEでJavaソースコンパイルするときjavacもIDEも動いてないっての?wwww

849 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 20:37:42.02 ID:GIvuOFoC.net]
>>810
いや、自分で書いたコードの話なんだけど?
Smalltalkは自分の書いたコードがすでに動いてないと
そういうエラーはでないでしょ。

850 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 20:43:46.47 ID:NYBtZzEL.net]
>>811
バカなの?コンパイル時って言ってるやん何度も

ともかくスペルミスくらいなら動的型言語でも静的にチェック可能なの

わっかんないやつだなー

851 名前: mailto:sage [2018/08/20(月) 20:48:48.89 ID:VU5jvdn2.net]
>>812
>スペルミスくらいなら動的型言語でも静的にチェック可能なの
型宣言がないのに、そんなことが可能なのでしょうか?

852 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 20:56:45.04 ID:GIvuOFoC.net]
ローカル変数だけだったりしてねw

近くの情報は周辺を見ればいいだけだから問題はすぐに分かるんですよ。
遠くの情報、例えばインターフェースが一致しているかどうかが
わからないと使い物になりませんね
人間がやると大変なものこそコンピュータにやらせないと

853 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 21:35:34.32 ID:1nsldRzy.net]
なんで静的型の後追いみたいなことで苦労してるんだろうね
初めから静的型言語使えばよいだけなのにね
怠惰を求めて勤勉に行き着くってやつなのかね
動的型全体がそうだよね
処理系書いてる連中も、言語使ってる連中も
楽しようとして最終的に苦労する
なにこれコワイ

854 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 21:43:42.44 ID:NYBtZzEL.net]
>>813
構文木にできれば(ローカルに限らず)未宣言の変数だとか未知のメソッド呼び出しだとか程度なら
簡単に分かる
Lispみたいに構文も単純なら構文ミスも指摘して修正候補を提示することも可能(例:InterlispとかのDWIM)

855 名前: mailto:sage [2018/08/20(月) 21:52:27.57 ID:VU5jvdn2.net]
>>816
>未宣言の変数だとか
動的型付け言語ってそもそも変数宣言はないのでは?

856 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 22:15:42.75 ID:NYBtZzEL.net]
>>817
変数を宣言させるかとそれに型情報が付くかどうかは別の話だよ
変数宣言をさせたら動的型言語じゃなくなるという法はない
宣言を課さない言語でも初回代入を宣言と見なす場合もある

857 名前: mailto:sage [2018/08/20(月) 22:20:21.86 ID:VU5jvdn2.net]
>>818
>変数宣言をさせたら動的型言語じゃなくなるという法はない

たしかにそのとおりですが、
でも実際問題、変数宣言をしてかつ動的型付けである言語は存在しますか?



858 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 22:29:16.58 ID:1nsldRzy.net]
そんなの珍しくないよ
JavaScriptとかな
変数宣言には二つの役割があって、一つは型を宣言することだけど
もうひとつスコープを宣言するって役割もある
だから動的型言語でも素直なレキシカルスコープが欲しければ変数宣言があってもよい
一方で変数への最初の代入を変数宣言の代わりにする言語は
だいたいスコープがバグってる
ただの変数への代入か、新たな変数を宣言したのか、区別がつかないからなwww
それでnonlocalだの@だの、ダサいだろ?
ま、そういうわけで、やっぱり変数宣言は有ったほうが良いし
どうせ変数宣言するなら型を書いても良い気がするし
動的型言語が衰退するのは当たり前だったわ
なんせ、ありとあらゆるスジが悪いんだよ

859 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 22:30:09.56 ID:K5IFIEIw.net]
>>819
Rubyのメソッドの仮引数やブロック変数は宣言でないと?

860 名前: mailto:sage [2018/08/20(月) 22:42:40.49 ID:VU5jvdn2.net]
>>821
def f(xyz)
"Hello, #{abc}!"
end

というメソッド定義があって
本当なら変数として xyz のところを間違えて abc と書いてしまった
というシチュエーションでも、エラーがでないでしょう?

861 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 22:52:22.44 ID:KNimMRpP.net]
>>822
あのさぁ…宣言を課すこととミスを検出できるか(するか)どうかはまた別の話なんだが?

今は「変数宣言をしてかつ動的型付けである言語は存在しうるか?」って話なんじゃないの?

862 名前: mailto:sage [2018/08/20(月) 22:58:45.39 ID:VU5jvdn2.net]
>>823
「宣言を課す」というのは「宣言をしていない変数は変数として認識しない」という意味なのでは?

863 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 23:22:30.48 ID:At189hOD.net]
◆QZaw55cn4cは会話が成り立たないからスルーしろ

864 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 23:23:22.96 ID:At189hOD.net]
ついでに長文ガイジもNGつっこんどけ

865 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 23:55:25.50 ID:PXXr8Lzz.net]
>>824
Rubyはそうしていないというだけで、コンパイル時に
abcが未代入(代入操作で宣言を兼ねるRubyでは未宣言にあたる)である事実や
あるいはメソッドとして未定義である事実をもってxyzとすべき記述のミスでは?との判断を下し
そうであれば修正を促すことは可能だろう?

予め釘を刺しておくけど、ミスの可能性があることとコンパイル可能であることとはまた別の話だからな!

866 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 00:12:58.46 ID:TQPukUfs.net]
>>824
もしかして
Rubyでは無引数(括弧なし)のメソッド呼び出し記述は同名のローカル変数のアクセス記述を遮蔽してしまう
っていう仕様をしらないとかいうオチ?

もしこのルールがなければ>>822はキミの想定通りエラーのはずだよ

867 名前:デフォルトの名無しさん [2018/08/21(火) 00:21:47.25 ID:kxzeRRBS.net]
JavaScript では、var の有無で、皆ハマった。
だから、ES2015(ES6) で、let, const を作って、ブロックスコープも作った

this の挙動もおかしい。
だから、Haxe のthisは、常にインスタンスを指すように変えられた

Python でも、nonlocal とか、頭おかしいw

Ruby では、関数スコープ・ブロックスコープの2つがあるから、バグりにくい

a = 1

def f
puts a # ここで、未定義の変数を参照してエラー
puts a = 2
end

f()



868 名前: mailto:sage [2018/08/21(火) 00:34:00.24 ID:Wpz7rvAB.net]
>>827
>代入操作で宣言を兼ねる
これは危険ですね
なぜなら、変数が

869 名前:未代入かどうか、正確には、変数が未代入「でないか」どうか、をソースコードのセマンティクスから判断するのは困難だと思うのです []
[ここ壊れてます]

870 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 01:41:26.90 ID:WMlArXdo.net]
>>827
Rubyは、未定義メソッドの呼び出しが可能なんじゃないか?
そのためのフォールバック用メソッドがあったはずだが。

871 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 01:47:26.07 ID:kxzeRRBS.net]
メタプログラミング Ruby 第2版、2015

で紹介している、Module#define_method(), method_missing() とかだろ?

872 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 04:51:25.59 ID:kxzeRRBS.net]
picture_url = "https://pbs.twimg.com/media/DlCjEV6V4AUM9Kl.jpg:orig#jpg"
uri = URI.parse picture_url

file_name = File.basename(uri.path) # ファイル名
file_extname = File.extname(file_name) # 拡張子

後ろに「:orig#jpg」が付いていても、ファイル名が正確に抜き出せる!

DlCjEV6V4AUM9Kl.jpg

873 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 05:11:45.98 ID:dhW5/kUC.net]
>>833
バグじゃんそれ

874 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 05:20:08.29 ID:dhW5/kUC.net]
>>831
そうそう。だからRubyじゃコンパイル時にわからないんだよ。
例えば以下のように、一行目にexitしてしまえば
その下にいくら変なコードがってもコンパイル時にチェックなんかできない

exit
aaa = 1312
class Hoge
 def hoge
 end
end
h = Hoge.new
h.hage
i = IIII.new


言い換えると、動的言語ではファイル単位でしかコードを見てないので
少なくともファイル外にある情報はわからない
検出できるのは文法エラーぐらいだよ
残念なことにね。それが現実。

875 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 07:09:45.22 ID:9qt5lkVf.net]
だからさぁRubyが駄目ってとこを動的型言語の限界だと一般化しないでくれ
話がまったく噛み合わない

876 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 07:32:38.20 ID:9qt5lkVf.net]
>>831
だからミスの可能性がある(そしてその指摘や修正の提案が可能である)ことと
コンパイル可能な(つまり状況が整えば実行可能になる)コードであることとは
また別の話だって釘を刺してるだろうに…

877 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 07:35:37.03 ID:Y1HyydAv.net]
ケンカはやめて



878 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 07:40:39.17 ID:9qt5lkVf.net]
>>830
Ruby限定の欠陥の話がしたいのか動的型言語一般の限界の話をしたいのかをまず表明してくれ
>>813からの流れは動的型言語一般の話ってわけじゃなかったのか?

879 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 08:20:58.17 ID:dhW5/kUC.net]
まああれだ、Smalltakerさんがちゃんとコードで説明してくれればいい

ここでオンラインでSmalltalkを実行できる
https://www.tutorialspoint.com/execute_smalltalk_online.php

ここに
Transcript show: 'Hello, world!'.

Transcript show: 4 sqrt printString.

と書くと、「Hello, world!2.0」と表示される

ここに
Transcript show: 'Hello, world!'.

Transcript show: 4 sqrtaaa printString.
と書くと、「Hello, world!」と表示されてから
エラーが表示される。

コンパイル時にチェックが行われるというのなら4という数字に
sqrtaaaというメソッドはないから実行時前にエラーを検出できるはずだ

そうならないので、未定義メソッドの検出はできない。
反論はコードでどうぞ

880 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 12:22:18.03 ID:tnY8+vhG.net]
ここにMatz呼べば全て解決じゃん
どうせ見てると思うぞ

881 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 12:52:50.65 ID:eDZ5kOgA.net]
>>840
Smalltalkの“confirm, correct, or cancel”を試したいならこれはIDEを前提とした機構なので
GNU SmalltalkのようにUNIXとの連携を重視したCUI前提の変わり種のSmalltalkには実装されて

882 名前:ィらず使えません
またPharoのように今風のシンタックスハイライトのついでに色で警告する方式がデフォになった処理系でも抑制されています
“confirm, correct, or cancel”が動く様子やその仕組みを検証したいのであればVisualWorksかSqueakあたりがよいでしょうね

SqueakならSqueakJSというWebブラウザで動作する処理系があり、これならすぐに動かせるのでお薦めです
今回のような古くからの機構に興味があるのなら DEMOS の Mini で起動できる Mini Squeak 2.2 あたりが軽くてよいのではないでしょうか
(ワークスペース変数導入後、変数名のミススペルチェックはワークスペースでは機能しないためこの点でも今回の検証には古い方がよいでしょう)
https://squeak.js.org/

起動後まずデスクトップクリック→open...→transcriptでトランスクリプトウインドウを呼び出しておき、それから
どこでもよいので(Welcome to Mini Squeak 2.2 の適当な場所でも、open...→workspaceで新しいワークスペースを開いてもOK)

Transcript cr; show: 'Hello, world!'.
Transcript cr; show: 4 sqrt printString

とタイプして入力後、2行ともドラッグして選択してから右クリック(あるいは左手のスクロールバーとの境界にポインタを合わせて左クリック)
→do it (d) で>>840のコード(cr; は出力を見やすくするために入れました^^;)が動かせます
sqrtaaaに変えて再びdo itすれば、Hello, world!と表示される*前*に“confirm, correct, or cancel”と促されるはずです


関連してLispのDWIM(これも実行前の静的時チェック)はInterlispのマニュアル第15章で取り上げられていますので参考まで
https://archive.org/stream/bitsavers_xeroxinternceManualOct1983_52302609?ui=embed#page/n389

>>796
> 70年代のLispにすらあったDWIM

同書にもあるとおりDWIMは1960年代からです
“DWIM, the Do-What-I-Mean error correction facility, was introduced into this system in 1968 by Warren Teitelman”
[]
[ここ壊れてます]

883 名前:デフォルトの名無しさん [2018/08/21(火) 12:54:39.77 ID:qWx5Zods.net]
>>809
どこにでもいる

884 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 12:59:22.19 ID:OZUNGsZn.net]
「いまさらRuby」
「Rubyで学ぶ機械学習」
あたりを誰か書いてよ

885 名前:デフォルトの名無しさん [2018/08/21(火) 13:05:22.31 ID:qWx5Zods.net]
「間違ってRubyを始めてしまった人へ贈るPython入門」
もいいな

886 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 18:59:29.56 ID:WMlArXdo.net]
Pythonは、試してみたい気持ちもあるものの、よろしくないところもいくらか知ってるので、微妙なんだよなー。

そういえば、ボスが引退するそうだが、なにか変わんのかねえ。

887 名前: mailto:sage [2018/08/21(火) 19:15:33.64 ID:Wpz7rvAB.net]
>>839
個人的には ruby を改良しようといろいろ画策しています、宣言付き ruby とか
動的型付け言語にて変数宣言を導入すればずいぶんと使い勝手も変わるだろうと想像しています
そういう視点でおねがいします



888 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 19:17:47.11 ID:2YpoFUMY.net]
画策wwwwww
それでプルリクでもしてこいよwwwwwww

889 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 20:58:28.00 ID:zx3sEUVJ.net]
>>847
Rubyは変数宣言を省略したことが原因の仕様がらみのトラブルが少なくない
そんな犠牲をはらっても(型も含め)宣言を書かせないことがMatzの優先事項の上位にあるわけ
キミの「改良」案は何を今更だしそもそもMatzや取り巻きが耳を貸す可能性はゼロだろうね

890 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 21:02:49.75 ID:PnXfa+5/ ]
[ここ壊れてます]

891 名前:.net mailto: 例えばどんなトラブル? []
[ここ壊れてます]

892 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 22:37:38.64 ID:WMlArXdo.net]
>>850
スコープ

893 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 00:20:47.79 ID:h82tfzI1.net]
結局、言語を改良していくと、Haxe になる

マルチ言語・マルチプラットフォーム、
this の挙動を変えて、型推論・パターンマッチ・引数付き列挙

Ruby は、JS, Python などど違って、関数スコープ・ブロックスコープがあって、
関数スコープは強固だから、変数を内側へ通さない

だから変数宣言が無くても、バグらない

ES2015(ES6)でも、ブロックスコープが採用された。
変数宣言も、以前からのvar に加えて、const, let も作られた

894 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 05:07:26.61 ID:O2PM/1qE.net]
>>852
なんで関数スコープとかいう小さい話してるんだ?
小さいものであれば、少し頑張れば対応可能なのは
わかってるんだよ。もっと広い範囲、オブジェクト間の通信とか
プロジェクト全体のレベルでバグが発生するから型がいるんだよ

895 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 07:57:35.69 ID:g+4f8QiO.net]
>>850
↓でググる
site:www.rubyist.net/~matz (スコープ OR クラス変数 OR 定数)

896 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 11:48:39.81 ID:muib0HF0.net]
反論はコードで(キリッ

897 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 11:58:19.26 ID:ncZgpeak.net]
>>855
だからコード出せって



898 名前:デフォルトの名無しさん [2018/08/23(木) 12:08:41.61 ID:29gBK1aD.net]
言い出しっぺの法則

899 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 13:27:22.00 ID:muib0HF0.net]
>>856
何のコード?

900 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 01:12:35.83 ID:iN7pYJOp.net]
undef式ってどういうときに使うの?

901 名前:デフォルトの名無しさん [2018/08/26(日) 10:37:18.06 ID:0HcSjLFv.net]
教えてください!
[パーフェクトRuby]と[プロを目指す人のためのRuby入門 ]はどちらがオススメですか?
当方3ステップ本を学習中、仕事でRubyを使えるようになりたいと思っています。
よろしくお願いします!!

902 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 12:09:12.86 ID:mLZLsxB6.net]
>>860
仕事でRubyやりたいならRails以外の選択肢はないからいきなりRailsやるのがいいよ
Rails DSLは別言語なレベルにまでカスタマイズされてるから、最初に素のRubyをやるとかえって混乱するのでお勧めできない
あとはLinux使ったWebサイト運用構築のインフラ本を一冊と、AWSの本一冊かな
WebやるわけじゃないんならPythonで勝ち馬に乗ろう

903 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 12:46:28.68 ID:w0D5YFHr.net]
この順番で読む。
Rails は、無料のRails チュートリアルをやってもよい。
Rails の前に、Sinatra をいじくりまわすのも良い

たのしいRuby 第5版、2016

Effective Ruby、2015
バグが起きにくい、安全で効率的なコーディングと、
間違いやすいポイントを解説

改訂2版 パーフェクトRuby、Rubyサポーターズ、2017


改訂3版 基礎 Ruby on Rails、黒田努・佐藤和人、2015
実践Ruby on Rails 4: 現場のプロから学ぶ本格Webプログラミング、黒田努、2014

パーフェクト Ruby on Rails、2014
動作環境、Rails 4.0.5, 4.1.1

904 名前:デフォルトの名無しさん [2018/08/26(日) 13:00:08.38 ID:2ZbuD4Bs.net]
>>859
いらなくなったとき

905 名前:デフォルトの名無しさん [2018/08/26(日) 18:33:30.03 ID:kjnpmDtT.net]
>>860
>[パーフェクトRuby]と[プロを目指す人のためのRuby入門 ]はどちらがオススメですか?

どちらもオススメだけど、難易度であれば [プロ] よりも [パーフェ] のほうが高い
[パーフェ] は幅広く高度な話題を扱うプロ必読の本だけど、
説明もプロ向けで簡潔だから初心者では読んでも意味不明な魔術書と感じるかもしれない
それに対して、[プロ] は話題を厳

906 名前:選して丁寧に分かり易く解説している印象を持った

だから初心者へのオススメコースであれば以下の順序になる:
・たのしいRuby
・プロを目指す人のためのRuby入門
・パーフェクトRuby
[]
[ここ壊れてます]

907 名前:デフォルトの名無しさん [2018/08/26(日) 18:47:00.00 ID:kjnpmDtT.net]
>>861
>仕事でRubyやりたいならRails以外の選択肢はないからいきなりRailsやるのがいいよ

質問者は「Webをやりたい」と希望しているわけでもないのに
ナゼかRailsを勧める話が噛み合わない返答、日本語が不自由な人ですか?


>Rails DSLは別言語なレベルにまでカスタマイズされてるから、
>最初に素のRubyをやるとかえって混乱するのでお勧めできない

つまり:
  Pythonは手続き型プログラミングに特化して設計された言語だから、
  >>861のようなPythonプログラマには、手続き型にオブジェクト指向と関数型が融合された
  素のRubyをやると混乱した苦い経験が過去にあったのでお勧めできない、
という解釈できますね


>WebやるわけじゃないんならPythonで勝ち

つまり:
  トレンディーにセンシティブなナウいヤングメンにはPythonがお勧め
ということですね、たいへんわかりやすいです




908 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 19:39:05.79 ID:clMe+MHZ.net]
>>864
プロを目指す人のためのRuby入門は本当に入門用、yieldやProcの解説までで終わり。
パーフェクトRubyはメタプログラミングとかGemの作り方とか実践的なことまで書いてある。

909 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 19:40:46.31 ID:clMe+MHZ.net]
これから言語を初めて学ぶならTypescriptとかのほうがいいと思うけど。

910 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 19:48:01.06 ID:vWItB/Z8.net]
pythonだろjk

911 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 20:59:33.68 ID:B3lkUNKe.net]
ほら
>>865最高でしょ
これが典型的なルビリストの思考回路

912 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 21:18:59.11 ID:7cBpPp40.net]
>>867
初心者にJavaScript系はイカンやろ。クセありすぎ。
それだったら、C#をやるべき。

913 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 21:23:56.52 ID:vKa62JvF.net]
TypeScriptとC#だったら似たようなもんだろ
設計者同じなの知らないのか?

914 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 21:48:43.66 ID:SaWTBVer.net]
>>871
TypeScriptはJavaScriptに引っ張られる部分がどうしてもあるからね
さすがに似たようなもんではないと思う
JavaScriptの一大メリットである環境整備のしやすさもTypeScriptにはないし

初学者ならRubyは学びやすいと思うしいいと思うよ
たのしい本とかしっかりした書籍もあるしね

915 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 23:11:11.23 ID:2xrJOS4Z.net]
趣味でやるならRubyは書くの楽しいしお勧めできる
手に職付けるつもりなら全くオススメしないけど

916 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 23:26:48.25 ID:w0D5YFHr.net]
「プロを目指す人のためのRuby入門」の著者・伊藤淳一は、YouTube の動画がよい。
無料のRails チュートリアルをやった人は、彼の動画を見るのもよい

Junichi Ito

Rails 5.1で作るVue.jsアプリケーション 〜Herokuデプロイからシステムテストまで〜
https://youtu.be/ycOeM2umXkY

プロになる人は「Effective Ruby」は読んでおけ。
どの言語でも「Effective 何々」というのは、プロの必須本

917 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 00:26:10.32 ID:r5tUtp1V.net]
Rubyはそのコード効率の良さからちゃちゃっと書けるのがメリット
試作や使用頻度の低いツールの作成に重宝する



918 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 08:02:06.98 ID:QAQ5xX6o.net]
試作(笑)
そういやsassも最初はrubyで作られていたが、
遅いって言うんで、C言語で再実装されて
今じゃそっちが主流になったな

919 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 09:17:11.23 ID:k1/VmCLx.net]
プロトタイピングって言うと耳触りがいい

920 名前:デフォルトの名無しさん [2018/08/27(月) 12:19:20.56 ID:Fz9xVlti.net]
遅くなりましたが、返信頂きありがとうございます!3ステップ本でも苦戦しているので、これ

921 名前:いったん終わらせてから[プロを目指す]をやろうと思います
>>861
>>864
[]
[ここ壊れてます]

922 名前:デフォルトの名無しさん [2018/08/27(月) 12:21:01.46 ID:Fz9xVlti.net]
>>874
動画があるのは知りませんでした!
[efective]も読もうと思います!ありがとうございます!

923 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 13:13:32.53 ID:0aehZJwm.net]
耳触りが良いって言葉くっそ嫌い

924 名前:デフォルトの名無しさん [2018/08/27(月) 13:17:39.90 ID:Q4eMB8Ps.net]
ばずわーど

925 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 13:21:26.27 ID:f0mEiXXF.net]
プロトタイピングって言うと聞こえが良い

926 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 13:25:09.61 ID:97nSTlug.net]
Rubyには「やってみた」のほうがお似合い

927 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 13:27:08.09 ID:8Kt1o08C.net]
やってみたでいいと思うよ
そこから学んだことを基礎にして別の言語に行くもよし、そのまま使い続けるもよし



928 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 17:37:57.10 ID:LsIvpBlS.net]
>>874
この動画みたけど酷いな…
そもそもvueのソースは全部コピペでなんの説明もない
設定ファイルで何をしているのかゴニョゴニョ言ってるだけですぐ画面移動するしまったくわからん

単に作業やってますよ的なだけだな
初心者には意味不明の動画だよ

929 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 22:24:37.18 ID:r5tUtp1V.net]
コーダーになりたいのかプログラマになりたいのかによって変わるんじゃね
コーダーならRoR案件をやる以外でRubyを覚えるメリットはあまりないだろう
プログラマだったら複数の言語を操れるのが普通
ソフトウェアエンジニアだったら適材適所で言語を選択できないと

930 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 00:06:26.46 ID:zd97Q5KX.net]
PHPみたいな存在に収まったな

931 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 00:22:40.86 ID:vBkG5f14.net]
PHPがどんな存在なんだろうな

932 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 00:23:57.20 ID:s+h3X9SG.net]
つかれた
ほんとうに

933 名前:874 [2018/08/28(火) 00:34:49.08 ID:TEJeUOom.net]
>>885
Vue.js や、Rails チュートリアルをやった人からすれば、
Rails 5.1で、Vue.jsが動くことが確認できたから、画期的!

たった1人でも、実行できた実績があると、皆が後に続くから、価値がある

新しいものをいじくりまわして動かしてしまう、先駆者!

934 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 04:30:18.33 ID:IU+10hhU.net]
◆QZaw55cn4c はまだ荒らし続けてるのか
ほんま懲りないなコイツ

935 名前:デフォルトの名無しさん [2018/08/28(火) 14:51:47.47 ID:fwITIoXO.net]
レンタル鯖だと軒並みRubyで組む事になる
いまどき自前で鯖用意して高いコスト払う人っているのか?

936 名前:デフォルトの名無しさん [2018/08/28(火) 14:56:24.45 ID:vxybgpo1.net]
phpならともかくrubyならなんのかんのでvpsにせざるを得ないだろ。
構築めんどくせぇ…

937 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 15:06:29.72 ID:gFwi/D9L.net]
>>890
アホかこいつ
Vue.jsはブラウザ側で独立して動作するライブラリであり、バックエンドのAPIとAjaxで通信する
Vue使うならRailsはそのAPIを提供するだけであり、VueとRailsは直接的には何の関係もない
触れちゃいけない人なのは承知してるがさすがに目に余る



938 名前:デフォルトの名無しさん [2018/08/28(火) 16:34:41.02 ID:6kEMX7h9.net]
P
Hyara
P
Hyara
ぱっぱらぱー

939 名前:デフォルトの名無しさん [2018/08/28(火) 22:11:45.77 ID:5S/Bzcf+.net]
>>893
嘘ついてもすぐバレるんだからアンチスレから出てくるなよ

940 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 23:47:09.36 ID:TEJeUOom.net]
chef, vagrant は、Ruby で書かれている。
誰かが作った、レシピを探せば?

DevOps と、コミュニティを利用するのは、まさにRubyにもってこいだろ

941 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 10:17:15.28 ID:1N7Xw9cw.net]
>>897
そういうシステム的なところに、バージョン互換がクソのRubyを使うなよ、と思うんだが。
割り切ってPerlで実装するべき。

942 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 10:20:44.10 ID:Z5QuCC4F.net]
Rubyはシステムに入ってるバージョンには何も期待できないからなあ
アプリとセットでバージョンをコントロールできない環境なら絶対に使わないことにしてる

943 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 13:28:40.28 ID:ND6xKvzt.net]
>>898
Perlもバージョン互換クソだぞ。言語自体はまだマシだが、
多くの標準とされるモジュールが結局ただのcpanライブラリだったりする
Perlとは別に、標準モジュールがメンテされている。

944 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 13:29:42.09 ID:ND6xKvzt.net]
>>899
> アプリとセットでバージョンをコントロールできない環境なら絶対に使わないことにしてる

だからDockerがでてきたんだよね。アプリとセットでバージョンをコントロールするための仕組み
Rubyだけに限らない。どんなものでもセットでコントロールできちゃう

945 名前:デフォルトの名無しさん [2018/08/29(水) 14:42:17.16 ID:3Ovn6h4k.net]
なんかアンチの意見が多いように見えるんですが、Rubyって実際勉強する価値のある言語なんですか?

946 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 14:47:50.70 ID:arxyH2m7.net]
書き捨てのコード書くのにとても手早く書けて便利

947 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 15:17:06.91 ID:bzaK3e7y.net]
>>902
言語のスキルそのものに価値を求めるなら目下猛スピードで下降中のRubyはお勧めできない
上の人も書いてるけどサブ言語として書捨てスクリプトに使う分には悪くはない
言語に価値を求めるのではなく、価値は自分で生み出すんだよ



948 名前:デフォルトの名無しさん [2018/08/29(水) 17:45:09.85 ID:BcD2eC3K.net]
>>901
どんなものでもいいと言われてRubyを選ぶバカはいないだろうさすがにw

949 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 18:32:49.25 ID:ICSdkcMg.net]
>>902
あるよ
Rubyはラクに短く書けるからね
日用使いにもってこいだし
Rubyやった後で他の言語を使ったときに感じるもどかしさも成長の現われ

950 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 20:00:01.96 ID:C3NxYXPh.net]
>>902
利用価値とか将来性とか、そんなしみったれた理由じゃなくて、
「好きか、嫌いか」で選ぶ言語な気がする

自分は文字列処理とかの浅瀬でしか使ってないけど、
なんか書いててノリがいいんだ

951 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 20:05:19.84 ID:VZocGD05.net]
>>902
わざわざRubyスレを覗いてまでアンチな意見を出したがる人間がいるということは
それだけ広まってるってことの裏返しだよ

952 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 20:07:31.02 ID:9TW3Y4kQ.net]
>>908
Windowsスレみたいだな

953 名前:デフォルトの名無しさん [2018/08/29(水) 20:55:22.66 ID:sbo9jSpz.net]
やっぱレンタル鯖についてるRubyで組むのが一番楽だし安い
googleとかfacebookみたいなでかいサービス以外はこれで十分やろ

954 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 21:50:09.05 ID:ina9uBoN.net]
>>907
文字列処理ってRubyは結構得意だと思うな。ループが書きやすいのもある
PythonやJavaScriptでやっているとストレスがたまるたまるw

955 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 22:03:14.49 ID:iK2DqHZ9.net]
>>900
もちろん互換性優先なら標準モジュール縛り。
野良モジュールはいいかげんなのも多いからな。

956 名前:デフォルトの名無しさん [2018/08/30(木) 00:32:15.61 ID:HMl4aadA.net]
Rubyでグラボ動かすのたーのしい

957 名前:デフォルトの名無しさん mailto:sage [2018/08/30(木) 02:57:42.53 ID:DM4c6T6K.net]
実務未経験からWebエンジニアになった方の体験談を集めてみた。 - プログラミングを仕事に!
doryo9999.hatenablog.com/entry/2018/08/27/210644

Progate と、無料のRails Tutorial で勉強するのが、Webエンジニアの定番みたい



958 名前:デフォルトの名無しさん mailto:sage [2018/08/30(木) 03:24:52.09 ID:rxoSSaq5.net]
>>912
いや、だからPerlの標準モジュールは
単に野良モジュールをバンドルしただけなんだよ

959 名前:デフォルトの名無しさん mailto:sage [2018/08/30(木) 15:50:31.69 ID: ]
[ここ壊れてます]

960 名前:nb0FI+w1.net mailto: ローカル開発やデプロイはどのツールがおすすめ? []
[ここ壊れてます]

961 名前:デフォルトの名無しさん [2018/08/30(木) 16:01:51.81 ID:HtWH/5uG.net]
bashから呼び出したりシェル代わりに使ったりするならrbenvが便利だな

962 名前:デフォルトの名無しさん mailto:saga [2018/08/30(木) 21:34:27.07 ID:qmylcsW4.net]
そろそろ夏休み終了の季節か
時間つぶし用のRuby本をどこかの出版社で出してくれ

963 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 08:44:43.00 ID:ujTJ+lMf.net]
31日は今日までだが、明日明後日は土日なんだぜ・・・

964 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 09:08:58.06 ID:KAgj04IM.net]
ほんとや! じゃあハロワも休みだな

965 名前:デフォルトの名無しさん [2018/08/31(金) 12:29:49.35 ID:xKsqnbR+.net]
みんなエディタは何使ってるか教えて
私はatom使ってる
テーマが沢山あって楽しい

966 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 13:00:10.64 ID:9pMrcfpD.net]
Atomなんかまだ使ってる人いたんだ
MSのVSCodeに完敗して誰も使わなくなり、さらに開発元のGitHubがMSに買収されて完全に終わったエディタだぞ

967 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 13:08:16.29 ID:DXKxWv2O.net]
atomもvscodeもどちらも同じマイクロソフト社の
製品なんだから喧嘩するな



968 名前:デフォルトの名無しさん [2018/08/31(金) 16:57:57.78 ID:xKsqnbR+.net]
VS codeはターミナルの日本語が重なって表示される不具合を治す方法がわからなくてアンインストールしました……
vimとかサクラエディタとか、他にもエディタいっぱいあるけど、VS code派が多いのかな?

969 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 17:22:16.44 ID:Ed5vLPgD.net]
いま一番開発が活発なエディターだからね。

970 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 17:23:38.18 ID:9pMrcfpD.net]
Ruby以外では今はVSCodeが一世を風靡してる状況
- 大魔王マイクロソフトによって開発されたエディタである。
- VSCodeはTypeScriptという悪魔の言語によって書かれている。
- TypeScriptはこれまた大魔王マイクロソフトが人々を誘惑し静的型に引き摺り込むために開発された言語である。
- TypeScriptはRubyist達に愛されRailsのフロント用公式言語にも採用された聖CoffeeScriptを抹殺した。
こういう宗教的事情があるのでRubyistだけはVSCodeを忌み嫌っている。

971 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 17:24:11.51 ID:jDtDUsbL.net]
emacs

972 名前:デフォルトの名無しさん [2018/08/31(金) 17:39:56.72 ID:958KuBfY.net]
禿丸

973 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 20:50:54.50 ID:iqojN4Kg.net]
rubyやってる奴らは自分達が頂点だと思ってる

974 名前:デフォルトの名無しさん [2018/08/31(金) 20:59:56.48 ID:YgK7xM8R.net]
Rubyアンチが必死に特定のスレをあげてて吹く
ほんと何考えてんだ?

975 名前:デフォルトの名無しさん mailto:age [2018/08/31(金) 21:14:42.76 ID:SCJF/jOl.net]
荒らしがまた涌き出したのかと思ったら
◆QZaw55cn4c が帰ってきてたのか
いい加減に板を荒らすのやめろよ

976 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 21:15:37.22 ID:hdwU5T2H.net]
Rubyは基本emacsだな
Windowsしか使えない時はxyzzy使ってる

977 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 21:19:29.16 ID:9vTf/EZ+.net]
>>932
emacs使いならWindowsでも使え。



978 名前:デフォルトの名無しさん [2018/08/31(金) 23:28:50.61 ID:N52+Kto5.net]
>>929
アスペが多いイメージ

979 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 07:57:54.43 ID:kUpkBQ3x.net]
Windows のRubyist は、VSCode を使う

>>924
上下矢印を動かすと消える

それか一旦、端末を閉じてから、開き直すとか

980 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 09:16:49.41 ID:7X8llEoY.net]
RubyMine除くと選択肢皆無だもんなー今

981 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 09:30:00.05 ID:FRKhXQkv.net]
emacs→教祖様も愛用する大正義エディタだが習得コストや

982 名前:環境整備が極めて高い
Atom→今や情弱の代名詞
VSCode→宗教上の問題で使用不可
RubyMine→高い
Rubyistにとっては受難の時代だね
[]
[ここ壊れてます]

983 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 09:32:22.40 ID:FRKhXQkv.net]
あとRubyMine使っちゃうと「ゲロ重いIDEなんかに依存せず軽快にRubyを操る俺かっけえwwドヤァww」ができなくなるという大きな問題があるね

984 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 09:38:16.81 ID:FRKhXQkv.net]
あとはSublimeもあるな
VSCodeにあらゆる面で負けてるものに金を払うという理不尽さを受け容れられるなら悪くない選択肢だね

985 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 10:14:24.91 ID:RIX4RBZZ.net]
vimスルーかい

986 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 10:16:58.22 ID:8XWt4TWp.net]
Vimは最悪でしょ
教祖様に中指立てるようなもんだぞ

987 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 10:19:37.07 ID:aR5AJvlP.net]
ruby自体で作られたエディタが無い時点でなあ



988 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 10:37:32.58 ID:G2t628Mc.net]
スクリプト言語にむちゃいうな

989 名前: mailto:sage [2018/09/01(土) 11:39:46.11 ID:xvMvXv+W.net]
lisp コンパイラが存在するように ruby コンパイラがあってもいいと思うの…

990 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 12:05:20.84 ID:nhZwUooY.net]
cloud9でいいじゃん
もはや開発デバイスでwindowsもmacもlinuxも関係ない
いちいちローカルに仮想サーバーなんか作らなくていいし
IDEとしては普通だけど十分

991 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 14:18:19.40 ID:30m/ucV3.net]
VSCodeって以前試してみたことあるけど動作が重すぎて論外

992 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 14:26:26.69 ID:8XWt4TWp.net]
実際はAtomやRubyMineより遥かに軽いんだよなあ
Ruby製のエディタだと言って>>946に触らせたらクソ軽い最高のエディタだと言いそう

993 名前:デフォルトの名無しさん [2018/09/01(土) 15:18:25.24 ID:EqLeg0R1.net]
ATOMって人気無いのか……色んなテーマがあるのが面白くて、気分で変えたりするのが楽しい
ATOM以上にテーマのカスタマイズできるエディタないよな?

994 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 15:20:53.49 ID:mPcVbgud.net]
テーマは一番どうでもいいところ

995 名前:デフォルトの名無しさん [2018/09/01(土) 15:23:45.59 ID:EqLeg0R1.net]
>>949
では、一番重要なのは?

996 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 15:27:17.99 ID:8XWt4TWp.net]
>>948
VSCode
Atom用のテーマ作ってた人もみんなVSCodeに乗り換えてしまって、VSCodeに移植されてるよ
まあRubyistには無縁なんだけどね

997 名前:デフォルトの名無しさん [2018/09/01(土) 15:33:50.66 ID:EqLeg0R1.net]
>>951
VS codeでもテーマ変えられるんだ!知らなかった。ありがとう
Atomは重いし下火ならVS codeに乗り換えようかな……
でも、Rubyistには無縁とか、宗教上の問題で使えないってどういうこと?



998 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 15:39:33.85 ID:0QGY34UC.net]
キチガイ独自の宗教事情だから気にするな
VS CodeにRuby Solargraph入れるとめっちゃ捗るぞ

999 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 15:48:36.37 ID:kUpkBQ3x.net]
暗めのテーマ、Dracula とかか?

Bracket Pair Colorizer
vscode-icons, VSCode Great Icons
indent-rainbow

この辺の拡張機能を使えば、カラフル

1000 名前:954 mailto:sage [2018/09/01(土) 15:53:49.58 ID:kUpkBQ3x.net]
Bracket Pair Colorizer

カッコの色が、それぞれ違う。
これが無いと、カッコの対応関係がわからないから、プログラミングできない!

1001 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 16:56:03.17 ID:30m/ucV3.net]
未だにK2Editorを使っている。いい加減乗り換えたいが動作が重いか機能不足かの二択でいかんともしがたい

1002 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 17:18:52.07 ID:7ZnGpQEC.net]
メソッドやクラスの定義に飛べたり、クラス名や変数名変えたらプロジェクト内の全てに更新かけてくれるIDEない?

1003 名前: mailto:sage [2018/09/01(土) 17:37:20.16 ID:xvMvXv+W.net]
>>950
キーバインドを emacs 式に(できれば簡単に)できるかどうか
それ以外はどうでもいい…

1004 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 17:42:31.61 ID:aR5AJvlP.net]
>>943
ATOMもvscodeも大部分nodejsだったはず
pythonのidleはpython+tkだったか?

1005 名前:デフォルトの名無しさん [2018/09/01(土) 18:17:59.95 ID:wk35+pf/.net]
また荒らしが自演してるのか

1006 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 18:48:09.50 ID:ylFVE9fX.net]
もう今やEmacsの方がVS Codeより軽いぐらいだからな
VS CodeもAtomよりはよっぽどマシだけど、それでももっさり感は否めない
となるとEmacsか、せいぜいSublime Textって選択肢になってしまう

1007 名前:デフォルトの名無しさん [2018/09/01(土) 18:57:40.50 ID:EqLeg0R1.net]
>>953
solargraph入れたらgemが必要と言われ、gemインスールしてからgem install soragraphしたらエラーが出て解決策が分からない
プログラミング難しいっすね……(二ヶ月目初心者)



1008 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 19:24:37.72 ID:8XWt4TWp.net]
>>961
ゴリゴリに拡張しまくったemacsやvimなら体感的にはVSCodeの方が速いわ

1009 名前:デフォルトの名無しさん [2018/09/01(土) 19:42:00.02 ID:wk35+pf/.net]
次スレ
Ruby 初心者スレッド Part 64
https://mevius.5ch.net/test/read.cgi/tech/1535797516/

1010 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 20:26:57.40 ID:0QGY34UC.net]
>>962
コーディングより環境構築がややこしいのはプログラミングあるあるだから…

Windowsでruby installer使ってるならreadmeの最後にも書いてあるけど↓を試してみ
> gem uninstall eventmachine
> gem install eventmachine --platform ruby -- --use-system-libraries

1011 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 21:00:02.89 ID:30m/ucV3.net]
Rubyのgemに限らず最近の言語はパッケージ的な仕組みを持っているけど、処理内容が隠されてしまうから
意図した結果が得られないときのトラブルシュートが難航するんだよな
しかもパッケージがらみの情報は言語本体の情報より少ない上に初心者だとエラーの見方もわからなかったりしてより厳しい状況になる

これ、最近乱立気味のビルドシステムでも同じことが言えていて、標準的な手順から外れたとたん
ビルドシステムを勉強しエキスパートにならないとにっちもさっちもいかなかったりするし

1012 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 21:16:43.59 ID:9FO7jpj+.net]
トラブったらissue上げるだけだろ
コミュ障かよ

1013 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 21:19:19.18 ID:1LBe8Cyr.net]
Win環境でのissueなんか上げても誰も相手にしないぞ
UnixではテストしたWinは知らんでクローズ

1014 名前:デフォルトの名無しさん [2018/09/01(土) 21:52:28.86 ID:wk35+pf/.net]
アンチが嘘つくのは毎度のことだし無視が一番

1015 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 22:16:55.51 ID:ylFVE9fX.net]
>>968
それでクローズされた具体的なチケットプリーズ

1016 名前:デフォルトの名無しさん [2018/09/02(日) 07:15:17.60 ID:HcdhtgGT.net]
Rubyが書けるようになるとCやJava,Pythonに対してどんなメリットがあるの?
楽しい以外で

1017 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 07:17:10.87 ID:JtNT42gE.net]
たのしいがRubyの存在意義なのに
それを無視されましても・・・



1018 名前:デフォルトの名無しさん [2018/09/02(日) 07:49:22.50 ID:5WqNet32.net]
漏れなんか、ruby installer から、7-zip 版(9MB)を解凍して、ユーザー環境変数PATH を通すだけ。
バージョンアップは、フォルダを丸ごと削除する

最初に、gem で、bundler を入れたら、
gem install bundler

後は、Gemfile に書いて、bundle install してる。
rack-test, rspec, selenium-webdriver, nokogiri, mechanize, sqlite3

ただし、7-zip版は、MSYS2 コンパイル環境が入っていないから、コンパイルできない。
websocket のexe が無いから、これに依存しているgem がインストールできない。
websocketのexe(バイナリ)は、どこかに公開されていないのか?

VSCode でデバッグできないし、solargraph も動かない

1019 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 10:54:21.03 ID:Y9KYS1Vl.net]
>>971
そのへんよりはRubyのほうが書きやすいことは間違いない。
楽しいかどうかは外しても、楽ではある。

1020 名前:デフォルトの名無しさん [2018/09/02(日) 11:12:49.38 ID:l7vq29kF.net]
>>965
だめでした……
・eventmachineはインスールされていませんでした
・ご指摘のコマンドを入力しましたが、"failed to build gem native extention."のエラーが出ました

しかし、Rubyを再インストールするなど紆余曲折の末、gem install solargraphを試したら、無事インストールすることができました!ありがとうございました!
これでVS codeが使えます!

1021 名前:デフォルトの名無しさん [2018/09/02(日) 11:27:53.59 ID:l7vq29kF.net]
>>954
このへんの拡張機能も入れました!見やすくなってすごくいいです!
ATOM派だったけど心が揺らいできました!VS codeもいいですね!

1022 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 11:46:37.22 ID:Ja2P7X0l.net]
>>971
CやJava,Pythonを書けるようになってから
Rubyのことをチラッとでも勉強してみると、
>>974もいっているように、
「このへんの処理やるならRubyのほうがラクに書けるな」
って部分がわかるかと。

いきなりRubyだけ学んでも、ありがたみがわかりにくいと思う。

1023 名前:954 mailto:sage [2018/09/02(日) 13:17:29.30 ID:5WqNet32.net]
VSCode の拡張機能なら、以下も必需品。
VSCodeのスレも参照

Code Runner
右クリックメニューから、実行できる

Live Server
ファイルを保存するだけで、ブラウザへ反映される

1024 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 20:10:06.87 ID:4CYRjCOp.net]
irb -m
とするbcモードというのがあって分数や行列の計算ができるそうですが、
irb(main):001:0> 1/2 + 5/7
=> (17/14)
irb(main):002:0> 5/6 * 2/4
=> (5/12)
このように分数が計算できて便利ですが、
行列の表現の仕方がわかりません。
irb(main):001:0> [[1,2],[3,4]] + [[4,3],[2,1]]
=> [[1, 2], [3, 4], [4, 3], [2, 1]]
単純な結合になってしまいます。

1025 名前:デフォルトの名無しさん [2018/09/02(日) 21:16:55.54 ID:XrvM+5pA.net]
行列ってライブリ使うんじゃなかった?
Rubyで回転行列とかやってたときに標準添付のライブラリ使ったような覚えがある
というか、bcモードなんてあるのか

1026 名前:デフォルトの名無しさん [2018/09/02(日) 21:19:49.31 ID:XrvM+5pA.net]
アレ?

1027 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 22:00:59.43 ID:elP7igYW.net]
レンレンー、アーレーアレ



1028 名前:デフォルトの名無しさん [2018/09/02(日) 22:21:48.16 ID:QcUTaH+n.net]
>>971
楽しい以外は特に無いが。なにか問題が?

1029 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 22:26:54.89 ID:elP7igYW.net]
その言語じゃないとできない。みたいなことは殆どないよ。
大抵の言語でできることは他の言語でもできてしまう。

1030 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 22:54:00.92 ID:IfPBe/3n.net]
>>980
だいぶ前に無くなった。

1031 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 23:40:33.06 ID:/9nCrt4M.net]
>>979
bcモードはload mathn, fraction or matrix are availableってことだから
Matrix[[1,2]] + Matrix[[3,4]]ってしないとダメ
bcモードじゃないときはrequire 'matrix'する必要がある

1032 名前:デフォルトの名無しさん mailto:sage [2018/09/03(月) 18:35:42.70 ID:emnxf15g.net]
その用途ならoctave-cliのがいいよ

1033 名前:デフォルトの名無しさん [2018/09/04(火) 01:29:42.70 ID:GmOeUrEr.net]
アンチ必死すぎだろ

1034 名前:デフォルトの名無しさん [2018/09/04(火) 22:49:10.90 ID:JkSql3w1.net]
漏れは、Selenium WebDriver, Nokogiri で、

自分のPC の画像フォルダにある、様々なサイズの画像を、
すべての画像の高さを、画面の80% に揃えてから、ブラウザで見てる

1035 名前:989 [2018/09/05(水) 14:18:39.75 ID:TWmx8fnR.net]
Selenium WebDriver, Nokogiri を使って、
自分のPC の、Pictures 内の画像ファイルだけを、ブラウザで見る。
MyUtility クラスで、画像の拡張子だけを抜き出す

picture_paths = Dir.glob( 'C:/Users/Owner/Pictures/*' )
.select { |fpath| FileTest.file?( fpath ) && MyUtility.check_picture_extname?( fpath ) }
.sample( 5 ) # random choice

index_url = "file:///" + File.join(__dir__, 'index.html')
driver.navigate.to index_url

doc = Nokogiri::HTML(driver.page_source)
content_wrapper = doc.at_css("#content") # 全体の枠

picture_paths.each do | pict_path | # 各画像
# 画像ノード。改行を削除する
img_str = <<"EOT".gsub(/\n/, "")
<img src="#{ pict_path }">
EOT

img_node = Nokogiri::HTML::DocumentFragment.parse img_str
img_node.parent = content_wrapper # 親
end

inner_content = content_wrapper.inner_html.to_s.gsub(/\n/, "") # 改行を削除

jsCode = <<"EOT"
var elem = document.getElementById("content");
elem.innerHTML = '#{ inner_content }';
EOT

driver.execute_script jsCode # JavaScript を実行

1036 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:05:16.90 ID:guC9gvMf.net]
2.5環境でruby/dbiがエラーはいて動かないのでsequelを勉強してます。

sql serverにネットワーク越しにrubyodbcでodbc接続してますが
なぜかdecimal型が全部string型で帰ってくるし既存のテーブルだと
intで戻ってくるはずのまでそんなものだから延々調査してたんですけど元凶はrubyodbcでした。
odbcで帰ってくる値をrubyの型に変換するときに特定の型以外全部stringで返す仕様でした。

昨日tinytds接続にしたらdecimalはbigdecimalで帰ってきました。

1037 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 16:50:08.91 ID:yaYW83OX.net]
>>990
img_str = %(<img src="#{pict_path}">)
でよくない?
それにgsub使うよりdelete("\n")の方が分かりやすい
あと文字リテラルに"と'が無差別に混ざっているのが気持ち悪い



1038 名前:989 [2018/09/09(日) 17:20:05.47 ID:0ym3cmgA.net]
改行を削除しないと、タグの間に、改行ノードを作るかも知れないので、ややこしい

HTML の属性は、" で囲むから、それを文字列にするには、' の方がよい

"〜"属性"〜"
"属性" を含む文字列を、" で囲んで、" の対応関係が崩れて、ハマったから

'〜"属性"〜'
これなら、OK

1039 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:23:45.20 ID:yaYW83OX.net]
いやだからさ
index_url = "file:///" + File.join(__dir__, 'index.html')
こことかおかしいじゃん

1040 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:39:30.58 ID:3HCWUffr.net]
>>994
ROMってろよ

1041 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:39:49.42 ID:3HCWUffr.net]
>>994
5ch中毒かよ

1042 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:40:12.76 ID:3HCWUffr.net]
>>994
他スレで醜態晒してROMってる言うたのにまだいるのな

1043 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:40:26.92 ID:3HCWUffr.net]
>>994
お前話し方気持ち悪いんだよ

1044 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:40:56.22 ID:3HCWUffr.net]
>>994
死ねガチで

1045 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:41:15.61 ID:3HCWUffr.net]
>>994
一家諸共凄惨な死に方してろ

1046 名前:1001 [Over 1000 Thread.net]
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 144日 23時間 54分 18秒

1047 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています








[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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