- 1 名前:デフォルトの名無しさん [2020/01/04(土) 01:15:34.30 ID:X7t3Qsuc0.net]
- プログラミング言語 Rubyについての、初心者向けスレです。質問・要望・雑談などをどうぞ
質問するときは、OSやRubyのバージョン、エラーメッセージを書いて下さい。 Ruby on Rails については、WEBプログラミング板で 前スレ Ruby 初心者スレッド Part 65 https://mevius.5ch.net/test/read.cgi/tech/1545421414/ るりまサーチ (リファレンス検索) rurema.clear-code.com/ Rubyist Magazine - るびま jp.rubyist.net/magazine/ 逆引きRuby www.namaraii.com/rubytips/ Ruby コミュニティ公式 https://www.ruby-lang.org/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
- 830 名前:デフォルトの名無しさん mailto:sage [2020/10/13(火) 17:01:18.58 ID:v339nyYs0.net]
- >>789
ridk use で切り替えられるから最新版を試すと良い このへんの問題も改善されてたはず
- 831 名前:788 mailto:sage [2020/10/13(火) 17:05:42.76 ID:y5Oy6HcC0.net]
- RUBYOPT に、--encoding=UTF-8 を設定すると、
コマンドプロンプト・PowerShell の文字コードの設定で、 chcp 65001 と入力したが、どちらもエラーで、irbが起動しない でも、irbを使わなければ、 RUBYOPT に設定するのは、便利なんだけど
- 832 名前:788 mailto:sage [2020/10/13(火) 17:09:23.25 ID:y5Oy6HcC0.net]
- >>794
ほう
- 833 名前:デフォルトの名無しさん [2020/10/13(火) 17:24:55.62 ID:Iy+8ZYjV0.net]
- みんなありがとうございます
環境変数って編集したら再起動しないといけないとかありますか?
- 834 名前:788 mailto:sage [2020/10/13(火) 17:43:39.31 ID:y5Oy6HcC0.net]
- OS の再起動は、いらないと思う。
Ruby の再起動だけで良いと思う PowerShell で、以下を入力して、正しく設定されたか、確認してみ ls env:
- 835 名前:デフォルトの名無しさん mailto:sage [2020/10/13(火) 19:42:36.62 ID:MMOmBqSMr.net]
- pryがirb使ってるわけないじゃん。(「irb使う」ってのもよくわからんが)
readlineのライブラリがマルチバイト未対応なだけだから 日本語扱うならnoreadlineで起動すればいいよ。
- 836 名前:788 mailto:sage [2020/10/14(水) 05:06:57.79 ID:z5Uy/Vd30.net]
- pry, rails console を起動すると、irb が起動されるのかな? と思っていた。
画面が似てるでしょ? 例えば、Windows 10, WSL, Ubuntu 18.04 を起動すると、 コマンドプロンプトと同じ画面が起動される そういうのと同じなのかな? と思って
- 837 名前:デフォルトの名無しさん [2020/10/14(水) 08:31:15.20 ID:kgj1R+5V0.net]
- RUBYPORT変えてやってみたけどだめでした.
コマンドプロンプトとPowerShellは両方文字化けします. bash on Windowsだと問題なく動きます. 学校で配布された教材がコマンドプロンプトしか使っておらず, 与えられたサンプルプログラムはバージョン2.4以下じゃないと動かないらしいです. 留年しそう.
- 838 名前:788 mailto:sage [2020/10/14(水) 09:58:02.17 ID:z5Uy/Vd30.net]
- >RUBYPORT
RUBYOPT だよ。 ユーザー環境変数に、RUBYOPT に、--encoding=UTF-8 を設定する PowerShell で、以下を入力して、正しく設定されたか、確認してみ ls env: irb さえ使わなければ、文字化けしないはず! たぶん、ファイルの設定だろう。 sjis・CP932 じゃなく、BOM 無しUTF-8(UTF-8N) それで、PowerShell から「ruby a.rb」などで実行できるはず。 または、VSCode のCode Runner でも出来る。 ただし、Code-runnerの設定ファイルで、File Directory As Cwd をチェックしておく
- 839 名前:デフォルトの名無しさん mailto:sage [2020/10/14(水) 10:01:17.73 ID:rQGDkRcC0.net]
- 学校での話なら、友達か先生かに聞けよ。
- 840 名前:788 mailto:sage [2020/10/14(水) 10:07:17.92 ID:z5Uy/Vd30.net]
- ただし、RUBYOPT に、--encoding=UTF-8 を設定した場合、
chcp はデフォルトの、CP932 のままにしておく! 65001 にしない コマンドプロンプト・PowerShell で、chcp と入力してみ
- 841 名前:788 mailto:sage [2020/10/14(水) 10:21:16.97 ID:z5Uy/Vd30.net]
- >>804
修正 >chcp はデフォルトの、CP932 のままにしておく! >65001 にしない RUBYOPT に、--encoding=UTF-8 を設定した場合、 CP932/65001 のどちらでも、文字化けしない。正常に動く
- 842 名前:デフォルトの名無しさん [2020/10/14(水) 11:42:15.98 ID:kgj1R+5V0.net]
- >>805
ごめん!RUBYOPT変えた! ファイルの設定ってプログラム書いてるテキストファイルの設定ってことですか?どうやって変えるのでしょうか? 一応Rubyopt変えただけだと文字化けしちゃってchcp 65001って実行してプログラム起動させたらコマンドプロンプトは落ちちゃった. PowerShellはもう日本語全部文字化けしちゃった
- 843 名前:788 mailto:sage [2020/10/14(水) 12:29:05.96 ID:z5Uy/Vd30.net]
- たぶん、エディタの文字コードの設定メニューあたりから、
BOM 無しUTF-8(UTF-8N)に設定する 一番よいのは、VSCode で、Code Runner を使う
- 844 名前:デフォルトの名無しさん mailto:sage [2020/10/14(水) 19:15:13.60 ID:Y0U/d7P+r.net]
- >>801
noreadlineで起動すればいいって言ってんじゃん
- 845 名前:788 mailto:sage [2020/10/15(木) 06:56:58.31 ID:7eWumHpU0.net]
- RUBYOPT に、--encoding=UTF-8 を設定すると、
irb --noreadline で起動しても、エラーになる
- 846 名前:788 mailto:sage [2020/10/15(木) 07:13:17.57 ID:7eWumHpU0.net]
- RUBYOPT に、--encoding=UTF-8 を設定すると、
irb --noreadline irb -E UTF-8 irb -E Shift_JIS で起動しても、エラーになる
- 847 名前:788 mailto:sage [2020/10/15(木) 07:32:54.02 ID:7eWumHpU0.net]
- Windows では、RUBYOPT の、--encoding=UTF-8 と、irb は両立しない
irb を捨てて、VSCode のCode Runner を使う方がよい。 これで、選択したコード片、またはファイル全体を実行できる その代わり、pry, rails console が使えなくなるかも? よく分からないけど
- 848 名前:デフォルトの名無しさん mailto:sage [2020/10/15(木) 14:56:39.44 ID:FYvAP3o60.net]
- powershellじゃなくてレガシーコンソールのコマンドプロンプトを使わないとダメだったはず
- 849 名前:788 mailto:sage [2020/10/15(木) 15:46:22.07 ID:7eWumHpU0.net]
- >>810
は、PowerShell・コマンドプロンプト
- 850 名前:フどちらでも、エラーになる []
- [ここ壊れてます]
- 851 名前:デフォルトの名無しさん mailto:sage [2020/10/17(土) 14:09:06.36 ID:cX3MrjsP0.net]
- 4,000行ほどのRubyプログラムをnode.jsに乗り換えようと思ってましたが
やっぱりRubyの方が便利な気がしてきました。 JSはローカル変数がちゃんと作れることやapplyが使えること、ifブロックやコメントの書き方などが 好きだったんですが元々ブラウザ用だったせいかファイル関連が非同期推奨ですし stdoutとfileの違いもちゃんと意識しないといけなくなっているようです。 ファイル関連のライブラリも非同期のみの対応の場合も多いようで、Rubyに比べると 使い勝手に問題が有りそうです。 スクリプト言語の目的は簡単にプログラムしたいことですが、node.jsよりRubyの方が ファイル関連は簡単なようです。
- 852 名前:デフォルトの名無しさん mailto:sage [2020/10/18(日) 01:39:25.66 ID:xeOKOt4d0.net]
- Rubyはちゃんとしたブロック変数が作りにくいことが欠点だと思っていたのですが
逆にnode.jsの場合、グローバル変数とローカル(ブロック)変数の違いが 最初の定義時にlet(またはvar)を書くかどうかだけで区別されており、 それはそれで危険な場面もあるように気付きました。 Rubyの場合は、先頭が$で始まる変数はグローバルになり、大文字で始まる変数は グローバル定数になりますので、有る意味では安全ですし、命名規則としても 全てのプログラマで共通になりソースの分かり易さに貢献している可能性があります。 node.jsの場合、let文を書き忘れただけでグローバル変数になるのは原因不明の バグが入り込む可能性を増やしている可能性があります。 また、Rubyは、system関数が便利です。 実際に使用してみた感想としてRubyは全体的に安定している印象を持ちましたが、 node.jsは、インストール時の一番大事な環境変数ですら自動設定されておらず、 プログラマー以外の人にプログラムを配布することは絶望的です。
- 853 名前:デフォルトの名無しさん [2020/10/18(日) 18:18:43.72 ID:WlQf1Fni0.net]
- >最初の定義時に、let(またはvar)を書くかどうかだけで区別されており
VSCode ESLint とかで、チェックできるのでは? Windows でも、50ms 以上掛かる、IO は非同期を推奨してるから、書きにくい でも、Ruby on Rails 6 では、デフォルトで、Node.js, Webpack を使う ただし、GUI はHTML, CSS/SASS, Bootstrap, JavaScript(JS)だけど、 サーバー側言語には、Rubyを使う Rubyには最初から、C と同様、関数スコープがあった。 ES2015 で、JS にも出来たのかな?
- 854 名前:814 mailto:sage [2020/10/18(日) 18:30:15.98 ID:WlQf1Fni0.net]
- YouTube で有名な雑食系エンジニア・KENTA は、
初心者が進む道を、サーバー側言語のRuby → Go を王道としてる この2つ以外は、出てこない。 JavaScript, Python から始めろって絶対に言わない! Python から始めてはいけないって言ってる。 「AIや機械学習に興味があるのでPythonから勉強」は誤りです。【YAGNIの法則】 KENTA は、10言語以上知っていて、 登録者数5万人、月千円のサロンが、2千人もいるから、 十分にヒアリングしてるし、どの言語が挫折確率が高いか、よく分かっている
- 855 名前:デフォルトの名無しさん mailto:sage [2020/10/18(日) 18:36:30.11 ID:xWXtsYNK0.net]
- KENTA「Rubyに拘泥する奴は伸びない。さっさと他の言語に進め」
- 856 名前:デフォルトの名無しさん mailto:sage [2020/10/18(日) 19:10:33.77 ID:Ie2s5K3J0.net]
- >>816
Cは、関数スコープというより、ブロックスコープ。 Rubyとは違う。
- 857 名前:デフォルトの名無しさん [2020/10/18(日) 20:35:28.25 ID:2aU6LfzH0.net]
- KENTA「C++を始めるべき」
- 858 名前:デフォルトの名無しさん mailto:sage [2020/10/23(金) 17:32:28.92 ID:iE1/WHvK0.net]
- VSCodeなどにHTMLのLivePreview機能がありますが、
erbのLivePreview対応
- 859 名前:アプリケーションってありますか? []
- [ここ壊れてます]
- 860 名前:デフォルトの名無しさん [2020/10/24(土) 08:32:09.72 ID:PENdR3tu0.net]
- VSCode の拡張機能のLive Server では、Web Extension で、
PHP で作る動的ページも表示してるけど、ERB のやり方は分からない https://chrome.google.com/webstore/detail/live-server-web-extension/fiegdmejfepffgpnejdinekhfieaogmj?hl=pt-BR Rails 6 なら、webpack-dev-server が標準
- 861 名前:デフォルトの名無しさん mailto:sage [2020/10/24(土) 14:35:22.81 ID:rBYTjNf90.net]
- >>822
ありがとうございます webpack-dev-server 調べてみます
- 862 名前:デフォルトの名無しさん mailto:sage [2020/10/24(土) 21:01:22.94 ID:ehonUome0.net]
- number = "0.072953"
float_number = number.to_f bigdecimal_number = number.to_d (1000 / float_number) # => 13707.455485038312 (1000 / bigdecimal_number) # => 0.13707455485038e5 1000.div(float_number) # => 13707 1000.div(bigdecimal_number) # => 13707 1000.fdiv(float_number) # => 13707.455485038312 1000.fdiv(bigdecimal_number) # => 2.22360747e-314 なぜ 1000.fdiv(bigdecimal_number) のときは 13707 台ではなく 2.2 e-314 になるの? fdivの引数にdecimalは期待されていない?
- 863 名前:デフォルトの名無しさん mailto:sage [2020/10/24(土) 21:05:37.26 ID:xQuuF55sr.net]
- どっちも変わらん
p 100.fdiv(float_number) # => 1370.745548503831 p 100.fdiv(biddecimal_number) # => 1370.745548504
- 864 名前:デフォルトの名無しさん mailto:sage [2020/10/24(土) 21:19:23.51 ID:6XNLJEFJ0.net]
- biddecimalwwwww
- 865 名前:デフォルトの名無しさん mailto:sage [2020/10/24(土) 21:23:11.77 ID:ehonUome0.net]
- ありがとう
使ってるrubyのバージョンが低すぎるみたいだ
- 866 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 09:56:38.85 ID:/elpRfls0.net]
- rubyはバージョン上げると前動いたコードが動かないからな。
そこらへんの互換性はjs>>php>>>python>>>rubyみたいな感じ。 行き当たりバッタリで以前の仕様気にせず変える。
- 867 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 10:48:16.22 ID:M7kzCKlu0.net]
- >>828
phpは知らんけど js >> ruby >>> python やろ railsと違ってruby自体は後方互換性かなり高いぞ CLI系なら10年以上前のものでもだいたい問題なく使える pythonも言語自体は後方互換性高いが バージョンごとにdeprecated/removedになるAPIはrubyよりずっと多い それもあってメジャーなライブラリの新バージョン対応は遅くて 半年くらい待たないと言語の新しいバージョンを使えないし 言語の新バージョン + ライブラリの旧バージョンの組み合わせだと 動かなくなる率が高くてライブラリのAPI変更にも対応しないといけない
- 868 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 11:02:35.93 ID:/elpRfls0.net]
- 確かにpythonは2系と3系は隔絶してるけどマイナーバージョンアップでブッ壊れるのはrubyだろ
- 869 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 11:36:06.65 ID:M7kzCKlu0.net]
- >>830
例えば?
- 870 名前:デフォルトの名無しさん [2020/10/25(日) 12:12:32.16 ID:usbfp6+yF.net]
- C最強ですね判ります
- 871 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 13:00:13.81 ID:vQGWPLvqr.net]
- マイナーバージョンアップで後方互換性がぶっ壊れた例
俺も気になるんで教えて
- 872 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 13:25:50.19 ID:M7kzCKlu0.net]
- >>829
よく考えるとjsもクライアントサイドだけじゃなく サーバーサイドで考えると動かなくなることあるな rubyやpythonに比べて新陳代謝が激しくて 10年使い続けたりしないから気にならないだけかも
- 873 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 17:55:59.08 ID:y6I5Oh6cM.net]
- >>831
リリースノートでも読め。 標準モジュールの変更とか。
- 874 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 18:04:13.90 ID:MTjKoQS00.net]
- JIS規格化されてる
- 875 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 18:42:02.16 ID:M7kzCKlu0.net]
- >>835
エアプでしたか pythonと違ってrubyでは「標準モジュール」という言い方はしないよ
- 876 名前:デフォルトの名無しさん mailto:sage [2020/10/25(日) 19:16:39.17 ID:y6I5Oh6cM.net]
- >>837
んな言葉の違いはどうでも。w ま、違いにあたらなければどうということはないから、
- 877 名前:キきにしろ。
実際にあたった人や、心配性にはツラい言語。 3以降は、絶対にないレベルにしてほしいものだ。 できればPerlレベルに。 [] - [ここ壊れてます]
- 878 名前:デフォルトの名無しさん [2020/10/26(月) 15:04:44.51 ID:EltRWJ/HF.net]
- Ruby が C++ を Hate してるのはホント良く判る
- 879 名前:デフォルトの名無しさん mailto:sage [2020/10/26(月) 16:25:50.97 ID:NTmfRHBrM.net]
- >>838
Perlもエアプかいw 駱駝道で極楽浄土に行けるといいネ
- 880 名前:デフォルトの名無しさん mailto:sage [2020/10/26(月) 17:52:56.78 ID:yxMoBvg5M.net]
- >>840
今やPerl6は存在しないことを知らないの?w
- 881 名前:デフォルトの名無しさん [2020/10/28(水) 21:30:30.88 ID:H1Ljm7vl0.net]
- >>2
リファクタリング:Rubyエディション (日本語) 単行本、2020/3、 Jay Fields/Shane Harvie/Martin Fowler/Kent Beck/長尾 高弘 Martin Fowlerの名著『リファクタリング』のRuby対応全面改訂版が、ついに復刊! Kent Beck は、eXtreme Programming(XP)の提唱者 Java 版をRubyへ書き直したもの。 2010年の復刊。8,800円!
- 882 名前:デフォルトの名無しさん [2020/10/31(土) 08:20:00.50 ID:B8uNhuq7M.net]
- ruby初心者です。
以下のNodeクラスにEnumerable moduleをincludeできるようなeachメソッドを 定義することはできますか。 class Node attr_accessor :data, :next def initialize(data) @data = data @next = nil end end
- 883 名前:デフォルトの名無しさん mailto:sage [2020/10/31(土) 14:36:23.15 ID:zTfIs5nt0.net]
- 「Ruby Enumerable 実装」で検索!
Rubyで簡潔にeachなどの機能を持つクラスを実装する方法 https://ja.stackoverflow.com/questions/1593/ruby%E3%81%A7%E7%B0%A1%E6%BD%94%E3%81%ABeach%E3%81%AA%E3%81%A9%E3%81%AE%E6%A9%9F%E8%83%BD%E3%82%92%E6%8C%81%E3%81%A4%E3%82%AF%E3%83%A9%E3%82%B9%E3%82%92%E5%AE%9F%E8%A3%85%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95 Ruby: EnumerableをincludeするよりEnumeratorを返そう https://techracho.bpsinc.jp/hachi8833/2018_06_29/57698
- 884 名前:デフォルトの名無しさん mailto:sage [2020/10/31(土) 15:21:36.29 ID:OmKC8x+Wd.net]
- >>843
https://ideone.com/IjTOn4
- 885 名前:デフォルトの名無しさん [2020/11/01(日) 00:02:35.61 ID:X6j+EvTNM.net]
- >>844 さん
特に、>>845 さん 実装を教えていただいて、ありがとうございます。 https://ideone.com/IjTOn4に記載されていた実装は 私では考えつくことができませんでした。 何を勉強したら書けるようになるのか、悩みます。 ちなみにですが、私の考えたeachの実装は以下のようなものです。 class Node def each while self.next != nil yield self.data self.self.next end end end (でも、私のeachは動作しません。)
- 886 名前:デフォルトの名無しさん [2020/11/01(日) 00:07:41.13 ID:X6j+EvTNM.net]
- >> 844
self.self.nextは、self = self.nextの誤記です。
- 887 名前:デフォルトの名無しさん mailto:sage [2020/11/02(月) 02:18:36.47 ID:cH+o+Znx0.net]
- Mix-in とは、何かのモジュールをinclude すると、
それが継承チェーンの親の所へ入ってくるから、 そのモジュール内の関数が使えるようになる 例えば、include Enumerable とすると、 自クラスで、each を定義してあれば、Enumerable内のすべての関数が使える Array も、Enumerableをインクルードしているから、 Array内の関数と、Enumerable内の関数が使える つまり普通に、複数のインスタンスを配列に入れておけば、 Array・Enumerable内の関数が使える ほとんど、この2つのクラス内の関数ばかり
- 888 名前:を使うから、
どういう事ができるか、見ておいた方がよい また、eachを定義せずに、Enumerableの機能を使うには、Enumerator を使う。 eachは内部イタレータで、Enumeratorは外部イタレータ 初心者はイタレータなど考えず、普通に配列内に入れておけばよい デザインパターンなら、この本が良い。 改訂2版 Ruby逆引きハンドブック、2018 [] - [ここ壊れてます]
- 889 名前:846 [2020/11/02(月) 08:31:13.28 ID:cH+o+Znx0.net]
- 「Ruby each 実装」「ruby イテレータ 実装」で検索!
内部・外部イテレータの違いも、調べてみれば? ruby eachの実装 https://teratail.com/questions/117974
- 890 名前:デフォルトの名無しさん [2020/11/03(火) 09:41:15.68 ID:XEwmRHqvp.net]
- >>848さん
アドバイスありがとうございました。 示していただいたキーワードを使ってネットの情報を読み漁ってました。 rubyに関する基本的な文法知識も弱いのですが、デザインパターンという 考え方?思想?もわかっていないので、文法の習得と並行して勉強が必要だと 感じました。修業します。
- 891 名前:846 mailto:sage [2020/11/03(火) 22:57:00.33 ID:pWieQE6j0.net]
- Mix-in の例で、include Enumerable して、
Enumerableモジュール内の関数が使えるように、 自クラスで、each を実装しましょうとか、 こういうのを初心者向けで見たことがない ほとんど、こういう事をやってる人は、いないと思う なぜかというと、Array は、Enumerableをインクルードしているから、 配列に入れれば、何でもできるから だから、そもそも、どうしてこういう事をしようと思ったのか、疑問に思う プログラミングのお題スレの問題でも、 すべて、Array, Hash, Enumerableで解ける
- 892 名前:デフォルトの名無しさん mailto:sage [2020/11/03(火) 23:15:09.60 ID:eTFEu/to0.net]
- >>851
遅延評価
- 893 名前:デフォルトの名無しさん [2020/11/04(水) 10:08:06.70 ID:wF8lqQTTF.net]
- Ruby、信者は、おことわり
- 894 名前:846 mailto:sage [2020/11/04(水) 23:31:34.08 ID:oOk5Pqvr0.net]
- 一部のメソッドで、遅延評価できる
instance method Enumerable#lazy lazy -> Enumerator::Lazy map/collect, flat_map/collect_concat select/find_all reject grep take, take_while drop, drop_while 一貫性のため、ブロックを渡さないケースのみlazy zip, cycle
- 895 名前:デフォルトの名無しさん mailto:sage [2020/11/04(水) 23:51:12.04 ID:lTVc+I7v0.net]
- Enumerableは高階関数とともに脱初心者の一番の目安
この2つをパパっと作って使えるようになれば初心者は卒業
- 896 名前:846 mailto:sage [2020/11/05(木) 23:53:13.53 ID:lCe7ZMVj0.net]
- Ruby の強みは、
Array, Hash, Enumerable, Enumerator の豊富なメソッドを、 メソッドチェーンでつなげていくプログラミング どういうメソッドがあるのか、じっくり見ておくべき!
- 897 名前:デフォルトの名無しさん mailto:sage [2020/11/07(土) 23:50:43.02 ID:DktN1QwS0.net]
- TIOBE Index、perlより下じゃん
- 898 名前:デフォルトの名無しさん mailto:sage [2020/11/08(日) 03:09:45.71 ID:YnyAcD/m0.net]
- とうとうperlより下になったかw
誕生経緯w存在意義が…w
- 899 名前:デフォルトの名無しさん [2020/11/08(日) 10:17:52.02 ID:WJSuSySW0.net]
- 助成金ひっぱりんごビジネス
- 900 名前:デフォルトの名無しさん mailto:sage [2020/11/08(日) 10:46:31.03 ID:msYgn7TJM.net]
- エンベデッド詐欺
ストリーム詐欺
- 901 名前:デフォルトの名無しさん mailto:sage [2020/11/08(日) 13:35:54.75 ID:P6MM9gKe0.net]
- 問題 Rubyを開発したのはだれか
答え 2ちゃんねる開発者でもあるひろゆき 根拠 https://programmercollege.jp/column/16456/
- 902 名前:デフォルトの名無しさん mailto:sage [2020/11/08(日) 16:28:40.45 ID:2D8TgavPM.net]
- もうすっかりマイナー言語だな
- 903 名前:デフォルトの名無しさん [2020/11/09(月) 21:51:36.37 ID:A/fRbmyh0.net]
- 初めまして、現在の状況はRuby、Windows 10、 VSCode(エディターのみ)です。
以前Basic言語をやってましたがRubyの言語は勉強しました。 1.RubyでVSCodeの便利なデバッガーは何がいいですか。 2.RubyでVSCodeのインターネットまたは本等の使い方を勉強したい。 3.gemへのログインの方法を知りたい。 以上の3点知ってる人がいましたら教えてください、お願いします。
- 904 名前:デフォルトの名無しさん mailto:sage [2020/11/10(火) 00:15:08.25 ID:TotITmpP0.net]
- >>791
に書いた 漏れは、Windows 10, WSL1, Ubuntu 18.04 で、 VSCode の拡張機能、Remote WSL も使う WSL2 と言う、Hyper-v を使ったものもあるけど、 安定バージョンかどうかは、知らない VSCodeの便利な拡張機能については、VSCodeのスレで聞いてください。 本は、徹底解説Visual Studio Code、本間咲来、2019/9 漏れのおすすめ拡張機能、Code Runner 右クリックメニューから、選択したコード、またはファイル全体を実行する この設定をチェックしておく Code-runner: File Directory As Cwd Whether to use the directory of the file to be executed as the working directory. デバッガーは漏れは、p, pp, tap などで見てる VSCodeの拡張機能では、Ruby というものかな? 8個の拡張機能をパックした、Ruby extension pack とか? 漏れは、よく知らない gem でインストールするのは、bundler だけ! その後は全て、bundlerでインストールする gemは、依存関係を考慮しなかったっけ? gemでインストールしても、依存関係で動かないかも gem, bundler については、検索して調べてください!
- 905 名前:デフォルトの名無しさん mailto:sage [2020/11/10(火) 07:08:10.23 ID:yOpM0tMJr.net]
- Rubyで本の使い方を勉強するってどういう意味?
- 906 名前:デフォルトの名無しさん [2020/11/10(火) 12:09:50.03 ID:08CevRpcF.net]
- Ruby 卒業しようぜ さっさと
- 907 名前:デフォルトの名無しさん [2020/11/12(木) 23:43:36.78 ID:9JGUhgPP0.net]
- g++です
undefined reference to `ruby_init' と表示されます たぶんdllに入ってると思うのですがどこにあるのでしょうか? よろしくお願いします
- 908 名前:デフォルトの名無しさん [2020/11/12(木) 23:44:28.91 ID:9JGUhgPP0.net]
- versionは2.7.0です
- 909 名前:デフォルトの名無しさん mailto:sage [2020/11/12(木) 23:46:31.86 ID:1kfP87l60.net]
- 「dumpbin Windows」で検索!
- 910 名前:デフォルトの名無しさん [2020/11/12(木) 23:48:50.89 ID:9JGUhgPP0.net]
- そもそもDLLが見つかりません
ほんとお願いします
- 911 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 00:13:10.26 ID:1m9BN6xD0.net]
- >>869
初心者には意味不明です
- 912 名前:862 mailto:sage [2020/11/13(金) 00:22:55.68 ID:LLS1FCOb0.net]
- g++ は、GNU の GCC に含まれる、C++コンパイラ。
GNU で、Windows 向けのDLL を作るの? RubyInstaller か? MSYS2/MINGW の、RubyInstaller Development Kit(DevKit)有りか? ridk install がどうしたこうしたとか? よく知らないけど https://rubyinstaller.org/downloads/ Windows 10, WSL, Linux でコンパイルする方法なら、 >>791 に書いたけど
- 913 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 00:28:08.04 ID:1m9BN6xD0.net]
- c++にruby_initを組み込んでみたいです
コンパイルエラーがでます さっぱりわかりません
- 914 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 00:34:11.29 ID:1m9BN6xD0.net]
- #include <ruby.h>
int main() { // Rubyインタプリタの初期化 ruby_init(); // スクリプトの実行 rb_eval_string("print 'Hello World!'"); // Rubyインタプリタのクリーンアップ ruby_cleanup(0); }
- 915 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 00:55:32.20 ID:4qY0TlDt0.net]
- 「初心者」のやることじゃねえ。w
- 916 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 01:16:13.61 ID:LLS1FCOb0.net]
- 正気?
初心者が、こんな事をする訳ないだろ C/C++ を、数年以上やってからの話
- 917 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 01:17:12.74 ID:1m9BN6xD0.net]
- そう言わずにコンパイルできる方法を教えてください
- 918 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 01:52:06.56 ID:LLS1FCOb0.net]
- ffi は C や C++ ように作成された共有ライブラリを、
Ruby で扱うことができるようにするためのライブラリです libffi を使っているので、事前にインストールが必要です。 NativeExtensions を直接扱わずに、C を操作できます ruby ffi 入門 https://hawksnowlog.blogspot.com/2019/0
- 919 名前:4/getting-started-ruby-ffi.html []
- [ここ壊れてます]
- 920 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 01:57:04.06 ID:1m9BN6xD0.net]
- その逆が知りたいわけで。。。
- 921 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 02:03:07.72 ID:LLS1FCOb0.net]
- C/C++ から、Ruby を呼ぶ方法か
検索すれば?
- 922 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 02:06:45.73 ID:1m9BN6xD0.net]
- 検索したんですけど見つかりませんでした
- 923 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 03:33:11.86 ID:LLS1FCOb0.net]
- Windows では、無理じゃない?
Linux で探した方が良いかも
- 924 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 03:35:06.10 ID:ZgWaq86m0.net]
- Windows使ってるってだけで教祖様の号令一下で石投げられるのがRubyコミュニティだからな
Pythonにしとき
- 925 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 04:42:47.05 ID:b8ug5Yf30.net]
- C/C++ から Python を呼ぶ方法なんて袋叩きに逢うのが
Python コミュニティですが、それがなにかどうかされますた???
- 926 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 04:53:52.48 ID:1m9BN6xD0.net]
- 難しそうなのであきらめました
- 927 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 06:40:07.62 ID:LLS1FCOb0.net]
- 普通は、Ruby から、C 製のNArray みたいな高速なライブラリを呼ぶ
逆に、Cから、Rubyを呼ぶ事はない。 普通に、Rubyコマンドを呼べば良いだけ 例えば、Rubyスクリプト内で、Python3 コマンドを呼ぶ str = `python3 -c 'print( "あ" )'` puts str #=> あ
- 928 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 07:00:14.39 ID:PGsPGVPV0.net]
- まつもと:それから「Backquotes」の地上げも考えていたんですけども、Backquotesをするとシェルで実行して結果を文字列で返すってやつですね。
(参加者から「いける、いける」の声) まつもと:なんかあの辺で「いける、いける」って言ってる人がいますけど、信じない(笑)。なので、これももうちょっと先で、もう1回くるかもしれませんが、少なくとも3.0では死なないということです。 https://logmi.jp/tech/articles/321308 バージョンによって使えてたクォートが使えなくなったりするクソ言語
- 929 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 08:51:10.39 ID:LLS1FCOb0.net]
- Python 2/3 のコミュニティーの分断は、地獄だった
だからRubyは、2/3 で絶対に分断させない!
- 930 名前:デフォルトの名無しさん mailto:sage [2020/11/13(金) 09:27:17.47 ID:PGsPGVPV0.net]
- マイナーバージョンで細切れ分断してるからな。
その辺は抜かりない。
|

|