[過去ログ] スレ立てるまでもない質問はここで 161匹目 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
182
(2): 2022/09/25(日)01:00 ID:7iyOFwBx(1) AAS
>>181
Rubyだけ特異な表記
ラムダ式(やクロージャや無名関数など)に対して多くの言語はその引数は中括弧ブロックの外に来る

例えばJavaScriptだと
let arr = [1, 2];
let res1 = arr.map(num => num + 1);
let res2 = arr.map(num => {
 return num + 1;
});

例えばRustだと
let arr = [1, 2];
let res1 = arr.map(|num| num + 1);
let res2 = arr.map(|num| {
 num + 1
});

このように全く異なるプログラミング言語でもほぼ同じ表記になる

mapはあくまでも関数だから丸括弧を取る
そしてmap関数の引数としてラムダ式(やクロージャや無名関数など)が来る
そして波括弧はそのラムダ式(やクロージャや無名関数など)の中身が複数行(今回の例のように1行でも可)の時にブロックとして用いる

特異な表記をしたり特異な解釈をするRubyは学習しない方がよいかもしれない
183: 2022/09/25(日)01:10 ID:xiicOjyE(1) AAS
>>182
恥の上塗りやめて~~w
184: 2022/09/25(日)01:33 ID:hevh/BVA(1) AAS
>>182
Rubyを学ぶと他の言語を学ぶ障害になるよな
Rubyは色んなことを省略しまくって記述するために色んなところが歪んでいる
185: 2022/09/25(日)02:20 ID:gTVpeMPe(1) AAS
タイプ数を減らそうとする方針のプログラミング言語は消えていく
かつて一世を風靡したPerlは没落して消えた
Rubyも没落が激しく消えていく運命
186: 2022/09/25(日)02:22 ID:kQGcz7Hc(1) AAS
Matzは尊敬してるけどRubyは好きではない
187: 2022/09/25(日)05:35 ID:PDKGWlWe(1) AAS
おれは逆、Ruby自体はそこそこよく考えられた言語だと思うけどMatzは嫌い
188: 2022/09/25(日)07:03 ID:eaSb619B(1) AAS
help コマンドを打つと

GNU bash, version 5.0.11(1)-release (x86_64-pc-linux-gnu)
These shell commands are defined internally. Type `help' to see this list.
...

と出てきますがhelpを囲むものが左側はバッククォートで右側はアポストロフィなんですが何か理由がありますか?
189: 2022/09/25(日)07:35 ID:fXZ+ASwp(1) AAS
日本語のカギカッコと同じで、右と左で違う記号で囲んでるだけ
プログラム的な話じゃなくて英語の話
190: 2022/09/25(日)09:56 ID:gPkb1GyX(1) AAS
本当は‘で開いて’で閉じる(“で開いて”で閉じる)ものなんだけど
ASCIIの時は文字数をゴリゴリに節約したかったんでそれぞれを'と"に纏めちゃった
191: 2022/09/25(日)10:06 ID:ggzfW2zp(1) AAS
‘ と ’なんだよな フォントの形が違って見えるだけ
192: 2022/09/25(日)15:40 ID:biezUmQw(1) AAS
厳密には ` はグレーヴアクセントだし ' はアポストロフィなので
引用符として使っているのはどちらも代用
バックスラッシュやシングルクォートのほうが馴染みがあるけど実は通称だったりする
193: 2022/09/25(日)16:09 ID:utXfanRE(1) AAS
UTF8に無事に統一された現代は本物も使い分けできるから困らん
5chのように古いまま取り残されたシステムもあるけど文字参照が通るから使い分けられるんじゃないかテスト
‘ ' ’
“ " ”
194: 2022/09/25(日)20:06 ID:v2Pj0t10(1) AAS
""でいいです。。
195: 138 2022/09/25(日)23:24 ID:EaCGv7B5(1) AAS
>>181
Ruby では、Enumerable モジュールの戻り値は、
ブロックの有無によって、2種類ある

map { |item| ... } -> [object]
map -> Enumerator

ブロックを渡さない場合は、Enumerator を返して、
外部イタレータとして扱える
196: 2022/09/26(月)02:33 ID:aC/L4xEl(1/2) AAS
FigmaがAdobeに行ったってニュース取り上げられてたけどFigmaってそこでUI作ったらHTMLかなんかに変換する機能とかあるのかな?
197: 2022/09/26(月)04:40 ID:tIU7Oyti(1/2) AAS
>>175
例えば、Ruby on Rails ではエラーメッセージなども国際化されていて、
日本語用のYAML ファイルに、単語などを登録する

accepted: を受諾してください
blank: を入力してください

他にも、モデル名を
member: 会員情報

その属性を
name: ユーザー名

もし、こういうように1つのファイルにまとめず、個別のファイルに書いていくと、
重複して、全てを修正しないといけなくなる

その時に修正漏れを起こさないように、かなりの時間を掛けて、
すべてのファイル・修正箇所を見ていく必要があるので、不可能
198: 2022/09/26(月)09:03 ID:aC/L4xEl(2/2) AAS
MySQLとかってFireBaseとかの代わりになりますかね?
199
(1): 2022/09/26(月)10:54 ID:NmZ8KQlQ(1) AAS
>>181
Rubyの場合、{} は、{ key => value } みたいな、Hashと解釈されて
しまうから、何にも無い場所ではブロックとしては使えないんじゃなかったっけ。
200
(1): 2022/09/26(月)13:56 ID:87YoNLu+(1) AAS
$ cp a a1
$ cp a a2
$ cp a a3
をまとめてやりたいときってブレース展開とかで上手く書けますかね?
for を使う方法ならわかりますが
201: 2022/09/26(月)14:50 ID:d5GlFcgh(1/2) AAS
展開にそういう機能はないからムリじゃないかな seqとxargs使えば出来るけどだったらforでもいいような
202: 2022/09/26(月)16:47 ID:EGAvXCTL(1/2) AAS
横なんですけど、例えばパラメータがファイル名に埋め込まれてる実験ファイルが大量にあるような状況で、各パラメータについての多重for文を回してデータを抽出、加工することがあるんですが、cut 辺りが非常に遅いです
こういうの早くするコツありますかね?

それこそ展開が使えると速いんですが、ファイル名が統一されてないときなんかは for 文式に走査せざるを得なくて困っています
203
(1): 2022/09/26(月)17:13 ID:KGSSSIHZ(1) AAS
シェルスクリプトのループはスクリプト言語のループに比べても桁違いに遅いし
ループ内で外部コマンド呼び出してたら更に遅くなる

速度が必要なら外部コマンド側でループ相当の処理をさせる
204
(1): 2022/09/26(月)17:51 ID:6tM7XGma(1) AAS
シェルスクリプトで遅いならスクリプト言語
それでも遅いなら事前コンパイルするGC言語
さらなる高速と省メモリを求めるなら非GC言語(C/C++/Rustなど)
205
(1): 2022/09/26(月)17:57 ID:rB0VxLwq(1) AAS
書き直したところで速くならない場合もあるから
何が遅いのかと他の言語なら速くなるのかを把握してないと無駄な努力をすることになる
206
(1): 2022/09/26(月)19:12 ID:d5GlFcgh(2/2) AAS
コマンドを起動することが本質のシェルスクリプトで速度云々言い出すのは色んなコトが世代間で伝わっていっていないんだろうなぁとこういうの見ると思う
207
(2): 2022/09/26(月)19:20 ID:EGAvXCTL(2/2) AAS
>>203-205
ありがとうございます
cut が滅茶苦茶遅いのは確認済みなので、とりあえずPythonあたりで同等の処理を試してみようと思います
> 例えばパラメータがファイル名に埋め込まれてる実験ファイルが大量にあるような状況で
というセットアップがそもそも良くないのかなぁとも思いつつ。。。
208: 2022/09/26(月)19:36 ID:7ui+hcDc(1) AAS
>>206
システマティックに大量のコマンドを起動するにはどうしたら良いですか、と質問を読み替えればなんらおかしくないでしょ
「世代」とか全然関係ね~老害乙
209: 2022/09/26(月)19:51 ID:BaHy7ID2(1) AAS
状況次第だよね
その多重forで外部コマンド多数起動でも速さも使用メモリも困らない状況ならシェルスクリプトでよいし
速さもメモリもシビアな状況で使うものはRustで書いてしまうし
210: 2022/09/26(月)21:02 ID:asYcDi/H(1) AAS
>>207
そのセットアップとやらを見直すことに特に障害がないなら見直したほうが早いと思う
211: 2022/09/26(月)21:21 ID:9/gyXHnS(1) AAS
>>207
この辺をまず参考にしてみては
外部リンク:stackoverflow.com
外部リンク:unix.stackexchange.com
1-
あと 791 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.026s