[過去ログ]
ぶっちゃけ始めるのにいい言語て何 part6 (1002レス)
ぶっちゃけ始めるのにいい言語て何 part6 http://mevius.5ch.net/test/read.cgi/tech/1628771431/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
295: デフォルトの名無しさん [] 2021/08/23(月) 11:20:45.88 ID: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だけ読みにくいですね http://mevius.5ch.net/test/read.cgi/tech/1628771431/295
317: デフォルトの名無しさん [] 2021/08/23(月) 16:23:53.39 ID: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も簡潔でわかりやすく言語だといえる http://mevius.5ch.net/test/read.cgi/tech/1628771431/317
336: デフォルトの名無しさん [] 2021/08/23(月) 20:26:48.96 ID: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だけ何か特別な状況ではないね http://mevius.5ch.net/test/read.cgi/tech/1628771431/336
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.039s