前スレ
ぶっちゃけ始めるのにいい言語て何 part5
https://mevius.5ch.net/test/read.cgi/tech/1622766330/
探検
ぶっちゃけ始めるのにいい言語て何 part6
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2021/08/12(木) 21:30:31.00ID:IpKRzNiB293デフォルトの名無しさん
2021/08/23(月) 11:10:43.95ID:OQWffhF4 >>292
彼は初心者の視点として
ラムダ式が読みづらいと主張してるんでしょ
その一例としてJSのNodeを例にしてるだけ
JSは無理に仕様を変更して拡張しなくても
(ライブラリやTypeScriptなどにまかせて)拡張していけばいいのでは?
と、初心者側の意見を提示してるだけに読めるけれど
どこもJSを叩いているとは読み取れない
彼は初心者の視点として
ラムダ式が読みづらいと主張してるんでしょ
その一例としてJSのNodeを例にしてるだけ
JSは無理に仕様を変更して拡張しなくても
(ライブラリやTypeScriptなどにまかせて)拡張していけばいいのでは?
と、初心者側の意見を提示してるだけに読めるけれど
どこもJSを叩いているとは読み取れない
294デフォルトの名無しさん
2021/08/23(月) 11:15:40.03ID:Z/2Y5aLI ラムダ多用したほうが局所化されてヒトにもコンピュータにも優しいはずなので
完全に見た目≒コーディングセンスの問題
クソコード自覚してほしい
完全に見た目≒コーディングセンスの問題
クソコード自覚してほしい
295デフォルトの名無しさん
2021/08/23(月) 11:20:45.88ID:PbwMaige >>292
その重ねまくる括弧とラムダ式みたいな特殊な記法が並んでる例を
メジャーなスクリプト言語3つで比較してみました
よくある「数字のリストをソートして逆順にして文字列にしてハイフンで繋ぐ」プログラム
【Ruby】
a.sort().reverse().map{|x| x.to_s}.join('-')
【JavaScript】
a.sort().reverse().map(x => x.toString()).join('-')
【Python】
'-'.join(map(lambda x: str(x), reversed(sorted(a))))
結果はPythonだけ最後が4重括弧となってしまいました
RubyとJavaScriptは手順通りに並んで読みやすいですがPythonだけ読みにくいですね
その重ねまくる括弧とラムダ式みたいな特殊な記法が並んでる例を
メジャーなスクリプト言語3つで比較してみました
よくある「数字のリストをソートして逆順にして文字列にしてハイフンで繋ぐ」プログラム
【Ruby】
a.sort().reverse().map{|x| x.to_s}.join('-')
【JavaScript】
a.sort().reverse().map(x => x.toString()).join('-')
【Python】
'-'.join(map(lambda x: str(x), reversed(sorted(a))))
結果はPythonだけ最後が4重括弧となってしまいました
RubyとJavaScriptは手順通りに並んで読みやすいですがPythonだけ読みにくいですね
296デフォルトの名無しさん
2021/08/23(月) 11:21:45.90ID:gb7LRZA7 ぶっちゃけ始めるなら、ぶっちゃけ系の言語が良い
おとなしい言語は駄目だな
おとなしい言語は駄目だな
297デフォルトの名無しさん
2021/08/23(月) 11:27:20.26ID:n1hZLw7w298デフォルトの名無しさん
2021/08/23(月) 11:51:41.29ID:/ZulnilQ カッコが多いと読みににくいんですか?
どうせ最後の ))))))) とかは終わりという意味ぐらいしかなく
近頃のエディタはカッコの数が違うと教えてくれるので
いやなら見なければいいだけなのでは? } だって
}}}}}}}}} とかなると分かりにくくなりますよね?
どうせ最後の ))))))) とかは終わりという意味ぐらいしかなく
近頃のエディタはカッコの数が違うと教えてくれるので
いやなら見なければいいだけなのでは? } だって
}}}}}}}}} とかなると分かりにくくなりますよね?
299デフォルトの名無しさん
2021/08/23(月) 12:04:11.75ID:JYwdk8yB emacs だと lisp のカッコは読みにくくならないから不思議ωωω
300デフォルトの名無しさん
2021/08/23(月) 12:24:04.86ID:OQWffhF4 激しい文盲がいるな
ラムダと拡張の話は別の主張ともとれるって話をしてるんだけどな
あんた何時も文脈を読み違えるけど
それでコードかけてんの?基本的に会話の理解能力が欠如してるんじゃないの?
ラムダと拡張の話は別の主張ともとれるって話をしてるんだけどな
あんた何時も文脈を読み違えるけど
それでコードかけてんの?基本的に会話の理解能力が欠如してるんじゃないの?
301デフォルトの名無しさん
2021/08/23(月) 12:40:36.40ID:ueeBrG1Y >>295
Pythonはカッコが多くなって読みにくいな。
Pythonはカッコが多くなって読みにくいな。
302デフォルトの名無しさん
2021/08/23(月) 13:07:59.31ID:OQWffhF4 大容量、超高速の現在
基本は保守や拡張しやすいコードだと思う
エレガントとかじゃなく
基本は保守や拡張しやすいコードだと思う
エレガントとかじゃなく
303デフォルトの名無しさん
2021/08/23(月) 13:48:55.44ID:WMEJY++t >>295を見るとPythonは可読性が低く保守もしにくそうですね
304Mb
2021/08/23(月) 13:53:54.95ID:h9qCfh+2305Mb
2021/08/23(月) 13:59:55.46ID:h9qCfh+2 >>298
そのためにインデントというものがあるんじゃないか。
インデントに関しては議論がある。
米国のとある学会は、
「今後、インデントに関する論文は受けつけない」と
宣言したと聞いた。
出典は共立出版の「プログラミング・セミナー」の中の
『凸凹プログラム』だったと記憶している。
そのためにインデントというものがあるんじゃないか。
インデントに関しては議論がある。
米国のとある学会は、
「今後、インデントに関する論文は受けつけない」と
宣言したと聞いた。
出典は共立出版の「プログラミング・セミナー」の中の
『凸凹プログラム』だったと記憶している。
306デフォルトの名無しさん
2021/08/23(月) 14:12:27.29ID:h9qCfh+2 >>302
> エレガントとかじゃなく
「プログラム書法」では「可読性を重視しろ」というのが
重視されているが、プログラムが書けるといえども
「実装畑」ではなくてそれ以外の分野の人もいるので、
エレガンスはあってもいいとは思う。
入山徳夫さんの「入山のアルゴリズム」はエレガントだが、
可読性も高いし移植性も高い(つーても、それが正しく動くことを
理解するのはなかなかに困難だったが)ので、それはそれで
(計算数学的には)いい。
とりあえず、パッケージ・ライブラリの中でおとなしくしていて
祟りをなしたりしないのなら、敬して遠ざけたほうがいい
(つまりは棲み分けだ)と思う。
> エレガントとかじゃなく
「プログラム書法」では「可読性を重視しろ」というのが
重視されているが、プログラムが書けるといえども
「実装畑」ではなくてそれ以外の分野の人もいるので、
エレガンスはあってもいいとは思う。
入山徳夫さんの「入山のアルゴリズム」はエレガントだが、
可読性も高いし移植性も高い(つーても、それが正しく動くことを
理解するのはなかなかに困難だったが)ので、それはそれで
(計算数学的には)いい。
とりあえず、パッケージ・ライブラリの中でおとなしくしていて
祟りをなしたりしないのなら、敬して遠ざけたほうがいい
(つまりは棲み分けだ)と思う。
307デフォルトの名無しさん
2021/08/23(月) 14:18:03.18ID:7w/ICjxb >>300
ラムダ式が入って来ると読みづらいとは、旧世代の人と同じだな。
むしろ読みやすく理解しやすくするためにラムダ式は使われる。
そのために後からラムダ式が導入された言語もあれば、既存だがラムダ式を活用する関数やメソッドを導入した言語もあり、ほとんどのメジャーな言語では全てラムダ式とその活用ができるように進化した。
ラムダ式が入って来ると読みづらいとは、旧世代の人と同じだな。
むしろ読みやすく理解しやすくするためにラムダ式は使われる。
そのために後からラムダ式が導入された言語もあれば、既存だがラムダ式を活用する関数やメソッドを導入した言語もあり、ほとんどのメジャーな言語では全てラムダ式とその活用ができるように進化した。
308デフォルトの名無しさん
2021/08/23(月) 14:23:37.15ID:/6K8Gxc1309デフォルトの名無しさん
2021/08/23(月) 14:41:58.79ID:/6K8Gxc1 んーRustはめんどっちいなあ
【Rust】
s.iter().sorted_by_key(|&&it| it * -1).map(|it| it.to_string() + &"-".to_string()).collect();
【Rust】
s.iter().sorted_by_key(|&&it| it * -1).map(|it| it.to_string() + &"-".to_string()).collect();
310デフォルトの名無しさん
2021/08/23(月) 14:58:36.63ID:CwptGCUZ モンタニエ氏はBCGとイベルメクチンを勧めてる
311デフォルトの名無しさん
2021/08/23(月) 15:00:38.27ID:CwptGCUZ モンタニエ氏はMS系ワクチンはやめておけと言ってる
312デフォルトの名無しさん
2021/08/23(月) 15:52:18.84ID:OQWffhF4 >>307
いや、俺は285さんを擁護しただけ
いや、俺は285さんを擁護しただけ
313デフォルトの名無しさん
2021/08/23(月) 16:06:06.11ID:tscEWmeQ314デフォルトの名無しさん
2021/08/23(月) 16:19:59.91ID:h9qCfh+2 >>307
いわゆる「ラムダ式」という概念は
Common Lisp の時代からあって、
> ラムダ式が入って来ると読みづらいとは、旧世代の人と同じだな。
とか言ってるのは、何かしら恥ずかしいと思う。
「いまどきニュートン力学とか言ってる奴は。
一般相対性理論を理解していない馬鹿だな。
テンソル解析とか理解できないんだろう wwwwww」
みたいな話がしたいんなら、「ぶっちゃけ始めるのにいい言語って何」
スレじゃなくて。どっか他の板の他のスレで議論してほしいと
思う。
いわゆる「ラムダ式」という概念は
Common Lisp の時代からあって、
> ラムダ式が入って来ると読みづらいとは、旧世代の人と同じだな。
とか言ってるのは、何かしら恥ずかしいと思う。
「いまどきニュートン力学とか言ってる奴は。
一般相対性理論を理解していない馬鹿だな。
テンソル解析とか理解できないんだろう wwwwww」
みたいな話がしたいんなら、「ぶっちゃけ始めるのにいい言語って何」
スレじゃなくて。どっか他の板の他のスレで議論してほしいと
思う。
315デフォルトの名無しさん
2021/08/23(月) 16:21:39.75ID:/6K8Gxc1316Mb
2021/08/23(月) 16:23:47.53ID:h9qCfh+2317デフォルトの名無しさん
2021/08/23(月) 16:23:53.39ID:PbwMaige >>309
Rustは同様にitertoolsを使って正しくはこうだね
【Rust】
a.iter().sorted().rev().map(|n| n.to_string()).join("-")
【JavaScript】
a.sort().reverse().map(x => x.toString()).join('-')
例えばこうしてJavaScript版と並べてみるとほぼ同じ
差異はイテレータにするiter()が余分に入るだけ
RustもJavaScriptも簡潔でわかりやすく言語だといえる
Rustは同様にitertoolsを使って正しくはこうだね
【Rust】
a.iter().sorted().rev().map(|n| n.to_string()).join("-")
【JavaScript】
a.sort().reverse().map(x => x.toString()).join('-')
例えばこうしてJavaScript版と並べてみるとほぼ同じ
差異はイテレータにするiter()が余分に入るだけ
RustもJavaScriptも簡潔でわかりやすく言語だといえる
318デフォルトの名無しさん
2021/08/23(月) 16:28:11.39ID:h9qCfh+2319デフォルトの名無しさん
2021/08/23(月) 16:35:30.03ID:OQWffhF4 ラムダの話をすると哲学になるからやめておこう
秋の夜長の酒飲み話になるまでまとう
秋の夜長の酒飲み話になるまでまとう
320デフォルトの名無しさん
2021/08/23(月) 16:46:55.97ID:TxHR3yQm ノーベル賞ウイルス学者モンタニエ重要提言
・スプレッドを止めない現行ワクはウイルス変異流行の選択圧を高め、ウイルスとの軍拡競争に陥る戦略ミス
・副反応知っている医療従事者への強制接種は止めろ
・T細胞免疫を高めるBCGワクチンを代わりに採用せよ
・イベルメクチン等による早期治療を導入せよ
https://mobile.twitter.com/j_sato/status/1424549554418970625
MS mRNAワクチンは害悪
https://twitter.com/5chan_nel (5ch newer account)
・スプレッドを止めない現行ワクはウイルス変異流行の選択圧を高め、ウイルスとの軍拡競争に陥る戦略ミス
・副反応知っている医療従事者への強制接種は止めろ
・T細胞免疫を高めるBCGワクチンを代わりに採用せよ
・イベルメクチン等による早期治療を導入せよ
https://mobile.twitter.com/j_sato/status/1424549554418970625
MS mRNAワクチンは害悪
https://twitter.com/5chan_nel (5ch newer account)
321デフォルトの名無しさん
2021/08/23(月) 16:49:02.94ID:OQWffhF4 ラムダの話なんかしてっからワクチン厨まで寄ってくる・・・
322Mb
2021/08/23(月) 16:59:59.61ID:h9qCfh+2 >>321
> ラムダの話なんかしてっからワクチン厨まで寄ってくる…
それは違うな。プログラミング厨の中に一定量の感染症厨が
いたというだけだ。
それを否定するなな、統計を取ってカイ自乗検定とかを行なって、
帰無仮説を排除するのがシステム屋だろう?
> ラムダの話なんかしてっからワクチン厨まで寄ってくる…
それは違うな。プログラミング厨の中に一定量の感染症厨が
いたというだけだ。
それを否定するなな、統計を取ってカイ自乗検定とかを行なって、
帰無仮説を排除するのがシステム屋だろう?
323デフォルトの名無しさん
2021/08/23(月) 17:01:17.35ID:/6K8Gxc1324デフォルトの名無しさん
2021/08/23(月) 17:09:14.40ID:8PVTVy0+ モンタニエ氏はBCGとイベルメクチンを勧めてる
325デフォルトの名無しさん
2021/08/23(月) 17:10:09.60ID:8PVTVy0+ リー・メリット博士によれば
mRNAテクノロジーは二進法の毒であり、完璧なバイオ兵器とのこと
mRNAテクノロジーは二進法の毒であり、完璧なバイオ兵器とのこと
326デフォルトの名無しさん
2021/08/23(月) 17:34:16.87ID:OQWffhF4 どんなシステム屋だよw無駄すぎるw
327デフォルトの名無しさん
2021/08/23(月) 17:55:38.21ID:mUiDivSN328デフォルトの名無しさん
2021/08/23(月) 18:01:34.93ID:mUiDivSN stdだけだとiteratorをcollectする必要があって
それがJavaScriptやRubyとは違うところ
a.iter().rev().map(|x| x.to_string()).collect::<Vec<_>>().join("-")
それがJavaScriptやRubyとは違うところ
a.iter().rev().map(|x| x.to_string()).collect::<Vec<_>>().join("-")
329デフォルトの名無しさん
2021/08/23(月) 18:35:17.45ID:LGNn5NAE そんな糞難しいLinqやラムダ式を考えなくても良いのがVBAの良いところだよね。
まぁ欲しくなったらC#でアドインでも作っといて入れ込めばいいし、
その気になればVBAの中にJavaScript入れ込めるし。
まぁ欲しくなったらC#でアドインでも作っといて入れ込めばいいし、
その気になればVBAの中にJavaScript入れ込めるし。
330デフォルトの名無しさん
2021/08/23(月) 19:30:39.38ID:/MMjlpx1 >>325
バイナリーウェポンな。
バイナリーウェポンな。
331デフォルトの名無しさん
2021/08/23(月) 19:31:38.06ID:I2MyFKUs332デフォルトの名無しさん
2021/08/23(月) 20:05:49.57ID:5zH9bxnu333デフォルトの名無しさん
2021/08/23(月) 20:18:34.31ID:NMruVyV2334デフォルトの名無しさん
2021/08/23(月) 20:20:05.76ID:/6K8Gxc1335デフォルトの名無しさん
2021/08/23(月) 20:22:54.88ID:gb7LRZA7336デフォルトの名無しさん
2021/08/23(月) 20:26:48.96ID:PbwMaige >>332
ラムダ式は通常は無名関数式を指すので「func」という関数名が付いているのはラムダ式ではないね
なのでラムダ式は下記の(1)
(1) function (x) { return x.toString() }
さらに他の言語と同様にfunction等のキーワード無しで短く書ける(2)のアロー形式も採用した
(2) (x) => { return x.toString() }
さらに他の言語と同様にreturnで値を返すだけの時は(3)のように値だけ書けばOKとしている
(3) (x) => x.toString()
さらに引数が1つだけの時は括弧を省略できるようにしている
(4) x => x.toString()
順に追えば特に違和感はないと思います
他の言語でもラムダ式と関数宣言は形式が異なるものが多いのでJavaScriptだけ何か特別な状況ではないね
ラムダ式は通常は無名関数式を指すので「func」という関数名が付いているのはラムダ式ではないね
なのでラムダ式は下記の(1)
(1) function (x) { return x.toString() }
さらに他の言語と同様にfunction等のキーワード無しで短く書ける(2)のアロー形式も採用した
(2) (x) => { return x.toString() }
さらに他の言語と同様にreturnで値を返すだけの時は(3)のように値だけ書けばOKとしている
(3) (x) => x.toString()
さらに引数が1つだけの時は括弧を省略できるようにしている
(4) x => x.toString()
順に追えば特に違和感はないと思います
他の言語でもラムダ式と関数宣言は形式が異なるものが多いのでJavaScriptだけ何か特別な状況ではないね
337Mb
2021/08/23(月) 20:49:03.70ID:h9qCfh+2 >>325
> カッコが多いと格好いいよな
誰がうまいことを言えと(笑)
「山田くん、座布団全部持ってって」。
つーても山田君のときに司会をやっていたかは定かではない。
師匠の「中村仲蔵」は、六代目圓生師匠と甲乙つけがたい。
> カッコが多いと格好いいよな
誰がうまいことを言えと(笑)
「山田くん、座布団全部持ってって」。
つーても山田君のときに司会をやっていたかは定かではない。
師匠の「中村仲蔵」は、六代目圓生師匠と甲乙つけがたい。
338デフォルトの名無しさん
2021/08/23(月) 20:57:12.28ID:h9qCfh+2 >>336
慣れるとそれなりに使い勝手はいいんだが、
「別のファイルで似たようなことをやってるんじゃないか?」と
思うと、共通化したくなるのがシステム屋の常。
アジャイル開発では便利だし、ファイルが無暗に増えなくてもいいという
利点はあるものの、個人的には心理的に落ち着かない。
慣れるとそれなりに使い勝手はいいんだが、
「別のファイルで似たようなことをやってるんじゃないか?」と
思うと、共通化したくなるのがシステム屋の常。
アジャイル開発では便利だし、ファイルが無暗に増えなくてもいいという
利点はあるものの、個人的には心理的に落ち着かない。
339デフォルトの名無しさん
2021/08/23(月) 21:02:20.31ID:qV//YiJv340デフォルトの名無しさん
2021/08/23(月) 21:08:44.65ID:dS401MqO >>295
Ruby
>a.sort().reverse().map{|x| x.to_s}.join('-')
map{|x| x.to_s} を、map( &:to_s ) と書ける
Symbol#to_proc で、self に対応する、Proc オブジェクトを返します。
生成されるProcオブジェクトは、lambda です
Ruby
>a.sort().reverse().map{|x| x.to_s}.join('-')
map{|x| x.to_s} を、map( &:to_s ) と書ける
Symbol#to_proc で、self に対応する、Proc オブジェクトを返します。
生成されるProcオブジェクトは、lambda です
341デフォルトの名無しさん
2021/08/23(月) 21:15:47.60ID:mT5p8ZPd342デフォルトの名無しさん
2021/08/23(月) 21:25:28.11ID:dS401MqO Elixir なら、
[ 2, -1, 3 ]
|> Enum.sort( )
|> Enum.reverse( )
|> Enum.join( "-" )
|> IO.puts
出力
3-2--1
[ 2, -1, 3 ]
|> Enum.sort( )
|> Enum.reverse( )
|> Enum.join( "-" )
|> IO.puts
出力
3-2--1
343デフォルトの名無しさん
2021/08/23(月) 21:29:48.49ID:6ZBOTLRO モンタニエ氏はBCGとイベルメクチンを勧めてる
MS系のワクチンはやめろと言ってる
MS系のワクチンはやめろと言ってる
344デフォルトの名無しさん
2021/08/23(月) 21:37:27.91ID:l/IbaTmN >>342
やっぱり第一引数を省略した()が気持ち悪い。
やっぱり第一引数を省略した()が気持ち悪い。
345デフォルトの名無しさん
2021/08/23(月) 22:09:06.72ID:h9qCfh+2 「始めるのにいい言語」というスレで
あんまりややこしい話はしたくないんだが、
引数を渡す場合には
番地呼び/参照呼び(call by adress, call by referrence。番地渡し)と
値呼び(call by value。値渡し)の他に
名前呼び(call by name)というのがあって、
ラムダ関数とかだと、けっこうややこしい話があるんだわ。
Prologを PDP から DEC に移植した中島秀之さんは、そのあたりで
修羅場を見たという話がある。
あんまりややこしい話はしたくないんだが、
引数を渡す場合には
番地呼び/参照呼び(call by adress, call by referrence。番地渡し)と
値呼び(call by value。値渡し)の他に
名前呼び(call by name)というのがあって、
ラムダ関数とかだと、けっこうややこしい話があるんだわ。
Prologを PDP から DEC に移植した中島秀之さんは、そのあたりで
修羅場を見たという話がある。
346デフォルトの名無しさん
2021/08/23(月) 22:15:20.58ID:x2dcVOdp >>295 ocaml
https://ideone.com/3ys87s
let f1 x = String.concat "-" (List.map string_of_int (List.rev (List.sort compare x)))
(* @@ Application operator *)
let f2 x = String.concat "-" @@ List.map string_of_int @@ List.rev @@ List.sort compare x
(* |> Reverse-application operator *)
let f3 x = List.sort compare x |> List.rev |> List.map string_of_int |> String.concat "-"
let (<<) f g x = f (g x)
let f4 = String.concat "-" << List.map string_of_int << List.rev << List.sort compare
let (>>) f g x = g (f x)
let f5 = List.sort compare >> List.rev >> List.map string_of_int >> String.concat "-"
let () = List.iter (fun f -> print_endline @@ f [1;1;9;2]) [f1;f2;f3;f4;f5]
↓
9-2-1-1
9-2-1-1
9-2-1-1
9-2-1-1
9-2-1-1
https://ideone.com/3ys87s
let f1 x = String.concat "-" (List.map string_of_int (List.rev (List.sort compare x)))
(* @@ Application operator *)
let f2 x = String.concat "-" @@ List.map string_of_int @@ List.rev @@ List.sort compare x
(* |> Reverse-application operator *)
let f3 x = List.sort compare x |> List.rev |> List.map string_of_int |> String.concat "-"
let (<<) f g x = f (g x)
let f4 = String.concat "-" << List.map string_of_int << List.rev << List.sort compare
let (>>) f g x = g (f x)
let f5 = List.sort compare >> List.rev >> List.map string_of_int >> String.concat "-"
let () = List.iter (fun f -> print_endline @@ f [1;1;9;2]) [f1;f2;f3;f4;f5]
↓
9-2-1-1
9-2-1-1
9-2-1-1
9-2-1-1
9-2-1-1
347デフォルトの名無しさん
2021/08/23(月) 22:22:40.81ID:5zH9bxnu 関数の構造が違うっていうのが分らんのだよね
意図的に違う説明してるのか
分かってないのか
からかわれてるのか
どうなの?
意図的に違う説明してるのか
分かってないのか
からかわれてるのか
どうなの?
348デフォルトの名無しさん
2021/08/23(月) 22:24:12.84ID:5zH9bxnu349デフォルトの名無しさん
2021/08/23(月) 22:25:58.95ID:ZlIia11a >>344
> やっぱり第一引数を省略した()が気持ち悪い。
現代のメジャーな言語の多くは、
『ターゲット.メソッド名()』
と呼び出す、もしくは、呼び出せるようにしました。さらに、
『ターゲット.メソッド名1().メソッド名2().メソッド名3()』
とメソッドチェーンで書けるようにもしています。
見やすくわかりやすくプログラミングしやすいからです。
> やっぱり第一引数を省略した()が気持ち悪い。
現代のメジャーな言語の多くは、
『ターゲット.メソッド名()』
と呼び出す、もしくは、呼び出せるようにしました。さらに、
『ターゲット.メソッド名1().メソッド名2().メソッド名3()』
とメソッドチェーンで書けるようにもしています。
見やすくわかりやすくプログラミングしやすいからです。
350デフォルトの名無しさん
2021/08/23(月) 22:32:20.12ID:qV//YiJv >>348
公式リファレンスにラムダなんて無いぞ
公式リファレンスにラムダなんて無いぞ
351デフォルトの名無しさん
2021/08/23(月) 22:33:46.35ID:qV//YiJv てか公式リファレンスってなんだっけ
352デフォルトの名無しさん
2021/08/23(月) 22:51:32.10ID:l/IbaTmN >>349
rubyだとレシーバだが、elixirはそれとも違う。UFCSをサポートしているわけでもなし。
rubyだとレシーバだが、elixirはそれとも違う。UFCSをサポートしているわけでもなし。
353デフォルトの名無しさん
2021/08/23(月) 23:25:40.54ID:uQ28Ugwc354342
2021/08/23(月) 23:30:37.47ID:dS401MqO Elixir は関数の第1引数を、パイプ渡しできる
355デフォルトの名無しさん
2021/08/23(月) 23:42:42.47ID:/6K8Gxc1 やめて、コロナと違ってラムダ君には何の悪気もないのよ
ラムダ式は普通の関数の糖衣構文(シンタックスシュガー)なのよ!!
ラムダ式は普通の関数の糖衣構文(シンタックスシュガー)なのよ!!
356デフォルトの名無しさん
2021/08/23(月) 23:48:50.73ID:l1bWxSKK クロージャはラムダじゃないがラムダに見える
357デフォルトの名無しさん
2021/08/23(月) 23:50:37.25ID:l1bWxSKK ちがった
358デフォルトの名無しさん
2021/08/23(月) 23:53:56.44ID:zs343Efl ラムダ株は脅威だとあわしろ氏は言ってる。
359デフォルトの名無しさん
2021/08/24(火) 00:17:24.45ID:hTcLrhRV モンタニエ氏はMS系ワクチンはやめろと言ってる
360デフォルトの名無しさん
2021/08/24(火) 00:58:21.12ID:rNMYd1ik 昨日も老害大暴れ んでそれに付き合うアホ
361デフォルトの名無しさん
2021/08/24(火) 01:11:46.83ID:nCkaOe0t 上のRubyの
map{|x| x.to_s} が冗長だとしてmap( &:to_s ) は短いけどなんかダサい
&: になにか必然性でもあるの?
map{|x| x.to_s} が冗長だとしてmap( &:to_s ) は短いけどなんかダサい
&: になにか必然性でもあるの?
362デフォルトの名無しさん
2021/08/24(火) 03:10:06.62ID:U9EepWKx363デフォルトの名無しさん
2021/08/24(火) 03:42:16.39ID:BNRQhvw2 記述の判りやすい言語から始めるべきなの?
むしろ難しいのを経験した方が良いかも。
むしろ難しいのを経験した方が良いかも。
364340
2021/08/24(火) 06:00:42.93ID:SMXHl8SK map( &:to_s ) は、Symbol#to_proc だろ
map に、&:to_i, &:itself, &:to_csv
&:lstrip, &:split,
&:downcase, &:capitalize
とか書くのは定番
map に、&:to_i, &:itself, &:to_csv
&:lstrip, &:split,
&:downcase, &:capitalize
とか書くのは定番
365デフォルトの名無しさん
2021/08/24(火) 07:00:43.69ID:EYpqq2mn366デフォルトの名無しさん
2021/08/24(火) 07:27:48.15ID:GKX34T4/ 問題は、今JavaをやってもブラックなSES系企業にしか就職できないということ
367デフォルトの名無しさん
2021/08/24(火) 08:38:12.33ID:6AE2aGAT Javaは今後少しずつ消えていくでしょう
例えばFacebook社はJavaを捨ててRustを採用だそうです
多くの点でJavaは古く劣っていますから
Facebook、開発言語に「Rust」採用 次期ビルドシステムの開発で
https://www.itmedia.co.jp/news/articles/2107/28/news152.html
Rustを用いることで、どのような利点があるのか。Facebookは記事の中で次の4つの項目を挙げています。
@Rustのasync/awaitシンタックスは、非同期のコードをとてもスムーズに記述できますし、Rustは複雑な並行処理の詳細を正しく理解するのに役立ちます。
BuckのJavaの計算を一つ一つ並行処理に移行するのは数カ月に及ぶ困難な作業でしたし、シングルスレッドの大きなボトルネックがまだ存在しています。
ARustには、開発をより簡単で楽しいものにしてくれる多くの高レベルな言語機能があります。
それらはenum、パターンマッチング、trait、手続き型マクロなどで、Rustの開発者の多くに愛されています。
BRust はメモリの割り当てをより細かく制御することができます。
ガベージコレクションのある言語では、たとえジェネレーショナルコレクションであっても、Buckが行うようなインクリメンタルな演算に対応するのは困難です。
CRustは高性能です。
Rustに移植することで劇的な性能向上を私たちは見てきました。
例えばFacebook社はJavaを捨ててRustを採用だそうです
多くの点でJavaは古く劣っていますから
Facebook、開発言語に「Rust」採用 次期ビルドシステムの開発で
https://www.itmedia.co.jp/news/articles/2107/28/news152.html
Rustを用いることで、どのような利点があるのか。Facebookは記事の中で次の4つの項目を挙げています。
@Rustのasync/awaitシンタックスは、非同期のコードをとてもスムーズに記述できますし、Rustは複雑な並行処理の詳細を正しく理解するのに役立ちます。
BuckのJavaの計算を一つ一つ並行処理に移行するのは数カ月に及ぶ困難な作業でしたし、シングルスレッドの大きなボトルネックがまだ存在しています。
ARustには、開発をより簡単で楽しいものにしてくれる多くの高レベルな言語機能があります。
それらはenum、パターンマッチング、trait、手続き型マクロなどで、Rustの開発者の多くに愛されています。
BRust はメモリの割り当てをより細かく制御することができます。
ガベージコレクションのある言語では、たとえジェネレーショナルコレクションであっても、Buckが行うようなインクリメンタルな演算に対応するのは困難です。
CRustは高性能です。
Rustに移植することで劇的な性能向上を私たちは見てきました。
368デフォルトの名無しさん
2021/08/24(火) 08:48:35.17ID:klPKE9MS うちLumbdaっちゃ
369デフォルトの名無しさん
2021/08/24(火) 09:34:21.50ID:BkROVOcT プログラムを学ぶのなら、な
C#でもいいけど
新しい言語は日本語訳の良書が少ない
成熟された良書が多く
言語以外のマナーな作法、デザインパターン
その他を同一言語で学ぶのなら
javaやC#などの言語がおすすめ
JSやRubyとかの言語は
プログラムを学ぶにはお勧めしない
四則や正規表現、関数、クラスなど
基礎に触れるだけならなんでもいいけどね
ってことを言ってるだけです
C#でもいいけど
新しい言語は日本語訳の良書が少ない
成熟された良書が多く
言語以外のマナーな作法、デザインパターン
その他を同一言語で学ぶのなら
javaやC#などの言語がおすすめ
JSやRubyとかの言語は
プログラムを学ぶにはお勧めしない
四則や正規表現、関数、クラスなど
基礎に触れるだけならなんでもいいけどね
ってことを言ってるだけです
370デフォルトの名無しさん
2021/08/24(火) 09:38:25.39ID:CbaJJsTq モンタニエ氏はBCGとイベルメクチンを勧めてる
MS系のワクチンはやめろと言ってる
MS系のワクチンはやめろと言ってる
371デフォルトの名無しさん
2021/08/24(火) 09:45:07.15ID:+GSJpsm+372デフォルトの名無しさん
2021/08/24(火) 10:56:40.44ID:BkROVOcT >>371
文章ちゃんと読もうよ
基礎的な文法を学ぶのならrubyやjsでもいいけど、って書いてあるでしょ
基礎的な文法を超えてプログラマーが学ぶことを推奨されている知識を得るには
javaやc#とかから始めた方が、良書がそろっているのでいいですよって
それでよくプログラマーやってるよね
クライアントや会社でプロジェクト組んでるときに
独りよがりな進め方するタイプに思えてならない
文章ちゃんと読もうよ
基礎的な文法を学ぶのならrubyやjsでもいいけど、って書いてあるでしょ
基礎的な文法を超えてプログラマーが学ぶことを推奨されている知識を得るには
javaやc#とかから始めた方が、良書がそろっているのでいいですよって
それでよくプログラマーやってるよね
クライアントや会社でプロジェクト組んでるときに
独りよがりな進め方するタイプに思えてならない
373デフォルトの名無しさん
2021/08/24(火) 11:15:51.98ID:foOBcdJv >>372
色んなプログラミング言語をやっきたが書籍で学んだのは最初のK&Rだけだな
特に今の時代ははっきりいって書籍は不要
各言語の公式サイトに必ず入門ページがぎっしりとある
あと今さら時代遅れのJavaなんかやっても無駄な古い知識を得るだけ
色んなプログラミング言語をやっきたが書籍で学んだのは最初のK&Rだけだな
特に今の時代ははっきりいって書籍は不要
各言語の公式サイトに必ず入門ページがぎっしりとある
あと今さら時代遅れのJavaなんかやっても無駄な古い知識を得るだけ
374デフォルトの名無しさん
2021/08/24(火) 11:15:55.07ID:stIRgCaS375デフォルトの名無しさん
2021/08/24(火) 11:25:14.92ID:6GSuu8+X 初めにJava選んでる時点でプログラミング向いてないってわかる、って師匠に言われた
376デフォルトの名無しさん
2021/08/24(火) 11:32:23.40ID:lkYJ2sp4 >>361
kotlinだと省略してデフォの変数に入れてくれるから便利よ
map {|it| it.toString() }でitの指定が省略できてこうなる
map { it.toString() }
別の変数名を指定することもできる。
kotlinだと省略してデフォの変数に入れてくれるから便利よ
map {|it| it.toString() }でitの指定が省略できてこうなる
map { it.toString() }
別の変数名を指定することもできる。
377デフォルトの名無しさん
2021/08/24(火) 12:12:40.95ID:IBss1fyn ・過度な短縮形はわかりにくくなる
・デフォルトの特定の変数名の存在は悪手
・デフォルトの特定の変数名の存在は悪手
378デフォルトの名無しさん
2021/08/24(火) 13:07:13.48ID:CbaJJsTq モンタニエ氏はBCGとイベルメクチンを勧めてる
MS系のワクチンはやめろと言ってる
MS系のワクチンはやめろと言ってる
379デフォルトの名無しさん
2021/08/24(火) 15:16:57.79ID:WZMj7UxV >>375
わかる
わかる
380デフォルトの名無しさん
2021/08/24(火) 16:31:28.20ID:XRxvSkOV くさる
381デフォルトの名無しさん
2021/08/24(火) 16:31:48.68ID:p4O+0aME382デフォルトの名無しさん
2021/08/24(火) 16:43:43.61ID:GKX34T4/ Rustも大企業が使うには向いてるのかもしれんけど、
初心者にはお勧めできんな
初心者にはお勧めできんな
383デフォルトの名無しさん
2021/08/24(火) 16:46:38.21ID:p4O+0aME とあるプラントで、
あっちゃこっちゃから呼ばれているのだが、ドキュメントが失われて
(どっかにはあるんだろうが)意味不明の C のコードがあった。
「触ると祟るから触るな」と云われていたのだが、それが
FORTRAN からツールを使って C に変換したもので、
とにかく GOTO 文の砂嵐だった。
それを Java に翻訳して解読したら、「熱間圧延プラントの中のワーク
(加工材。複数のワークがプラント内を流れることもある)の流れを
ペトリ・ネットで表現して、バーナーやらプレス機やらの
制禦プログラムからの問い合わせに応える」というルーチンだった。
Java で書き直してみると、厭でも古いスタイルの構造化プログラミングを
踏襲せざるを得ないので、総じて見通しがよくなるという効能はある。
「うますぎるプログラムを書く余地が少ない」のが
Java の取柄かも。
あっちゃこっちゃから呼ばれているのだが、ドキュメントが失われて
(どっかにはあるんだろうが)意味不明の C のコードがあった。
「触ると祟るから触るな」と云われていたのだが、それが
FORTRAN からツールを使って C に変換したもので、
とにかく GOTO 文の砂嵐だった。
それを Java に翻訳して解読したら、「熱間圧延プラントの中のワーク
(加工材。複数のワークがプラント内を流れることもある)の流れを
ペトリ・ネットで表現して、バーナーやらプレス機やらの
制禦プログラムからの問い合わせに応える」というルーチンだった。
Java で書き直してみると、厭でも古いスタイルの構造化プログラミングを
踏襲せざるを得ないので、総じて見通しがよくなるという効能はある。
「うますぎるプログラムを書く余地が少ない」のが
Java の取柄かも。
384デフォルトの名無しさん
2021/08/24(火) 16:48:35.78ID:Zt2QO8gi385デフォルトの名無しさん
2021/08/24(火) 16:49:12.62ID:Cx9DV9dh どっかのブログにもう今は初手ScalaかRustで良いって書いてあったぜ
でもC/C++で血反吐を吐かないとRust理解できないともあってよくわからんかった
でもC/C++で血反吐を吐かないとRust理解できないともあってよくわからんかった
386デフォルトの名無しさん
2021/08/24(火) 16:57:34.34ID:p4O+0aME >>382
初心者が書くのは、「誰かが書いたことのあるプログラム」が
ほとんどなので、既存のスタイルを踏襲するとか開発文書を
整備するとかいうと徒労感ばっかりが募るんだよな。
そういう意味では、パッと見てわかりやすくて
チョコチョコっと書けて実行できるような
対話型のミニ言語で、
サンプルとしてトイ・プログラムが揃っていて
他人のコードを見て勉強しやすいというのが
初心者向けの言語だと思う。
初心者が書くのは、「誰かが書いたことのあるプログラム」が
ほとんどなので、既存のスタイルを踏襲するとか開発文書を
整備するとかいうと徒労感ばっかりが募るんだよな。
そういう意味では、パッと見てわかりやすくて
チョコチョコっと書けて実行できるような
対話型のミニ言語で、
サンプルとしてトイ・プログラムが揃っていて
他人のコードを見て勉強しやすいというのが
初心者向けの言語だと思う。
387Mb
2021/08/24(火) 17:02:42.68ID:p4O+0aME388デフォルトの名無しさん
2021/08/24(火) 17:35:49.55ID:++1b7g0r389デフォルトの名無しさん
2021/08/24(火) 17:39:48.24ID:GKX34T4/ Rust信者の方々、落ち着いてくれ
あなたたちが生まれて最初に触れた言語がRustだったのか?
違うだろう
あなたたちは、2番目以降に身に付ける言語としてRustは優れている、ことしか
証明できないんだよ
あなたたちが生まれて最初に触れた言語がRustだったのか?
違うだろう
あなたたちは、2番目以降に身に付ける言語としてRustは優れている、ことしか
証明できないんだよ
390デフォルトの名無しさん
2021/08/24(火) 17:42:27.94ID:YeijyorD ここで執拗にRust推してるのは1人だけ
391デフォルトの名無しさん
2021/08/24(火) 17:51:54.91ID:lkYJ2sp4 じゃ、俺は最初の言語としてN-BASICお勧めヽ(´ー`)ノ
392デフォルトの名無しさん
2021/08/24(火) 18:26:03.94ID:+m358/0u 俺も初手Rust推してるから少なくとも2人はいるぞ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★2 [BFU★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 [ぐれ★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★2 [BFU★]
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 [Hitzeschleier★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 外務局長「中国さんごめんなさぁ...」小野田「中国なんかどうでもいいっ!」高市「首脳会談したい」マスコミ「立憲が悪いっ!!」 [237216734]
- 中国高官と話す外務省局長の表情、やばい ★2 [175344491]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
- 【悲報】日本人「日本が中国と戦争になったら世界中の国が応援してくれるぞ!」 [616817505]
- 小野田経済安保相「すぐに経済的威圧するところへの依存はリスク」😲 [861717324]
- 日本政府「高市総理の発言は問題ないと伝え、中国総領事のSNS投稿は問題があると中国に伝えました😊」 [931948549]
