>>153
OOPも元は宣言的を目指してるし、smalltalkや最近の関数型機能も取り込んだOOPな言語もある程度宣言的なんだよね。
じゃあ宣言的ってなんぞやってなるんだけど、HaskellもPrologも結局ループを再帰とかmapとかfoldlとかに置き換えて、if/switch文がガードやパターンマッチになっただけって言う。
(実際、Haskellのパターンマッチはcase(C言語系のswitch)の構文糖衣)
OOPもそう言う制御構造をメソッドに押し込んじゃえって感じだけど(少なくともmainとかの中身は宣言的に書きやすい)、メソッドの中身は相変わらず手続き的と言う。
(この辺、最近の言語だとクロージャ(ラムダ式含む)やらLinqやらで比較的、制御構造を隠蔽し易くなってると思う。あとはif/switch文だけだ。がんばれ!)
でも逆にそう言う目で見ると、関数型言語も手続き型言語も大差無い。
(関数型言語も事実上の再代入は可能だし)
強いて言えば関数型言語の方が関数に分割し易かったり、ガードやパターンマッチで分岐のネストが減る分、見やすいってだけ。
(どっちかと言えばアルゴリズムと相性が良いリストが基本か、効率重視の配列が基本かの違いの方が大きいので、リスト使う限り文法以上の違いは感じない)
GoとRust入門サイト読んでみたけど、どっちもOOPじゃ無いんだね。
Go=手続き型言語に最近トレンドの機能入れました。(ただしOOPは除く)
Rust=手続き型言語でも関数プログラミングな書き方出来ますが、関数型言語は言語レベルでサポートしてますー>なら、手続き型言語でも言語レベルで関数プログラミングをサポートしようじゃ無いか。
Goは依存関係に苦しんでた結果生まれたとか(dllとか基本的に作らない方針)、OOPへの問題提起な印象。
RustはOCamlとかSMLで良くね?と思ったけど、関数型言語のままだと普及しないから、手続き型言語に寄せました的な印象。
探検
オブジェクト指向ってクソじゃねぇかよPart3
■ このスレッドは過去ログ倉庫に格納されています
162デフォルトの名無しさん
2018/12/05(水) 16:30:58.93ID:ifntcr/4■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 双子パンダ、中国返還を発表 東京都 [少考さん★]
- 【東京】わずか9平方メートル…都心に近い「極小」アパートが若者に人気 狭くても“住めば都” ★2 [煮卵★]
- 【議員定数削減】維新・吉村代表「高市さんは約束を守ってくれている…信頼関係は裏切られてない」「野党がちゃんと審議してくれよ」 [Hitzeschleier★]
- 上野動物園の双子パンダ、1月末に中国に返還へ 国内でパンダ不在に ★2 [蚤の市★]
- 【訃報】『スタンド・バイ・ミー』ロブ・ライナー監督の自宅で2人の遺体が発見される [Anonymous★]
- 「外国人はもう日本を選ばなくなる」経営者たちが抱く深刻な懸念 ベトナム人実習生なしでは「成り立たない街」…【多文化共生企画】★3 [少考さん★]
- 「三つ編み、メガネ、読書好き」→1つ足して人気キャラにしろ! [189987783]
- 【年金支給日】今日は偶数月の15日だ❗うおおおおおおおおおお★2🏡
- ジャップの人手不足、限界突破wwwwwwwwwwwwwwwww34年ぶりの高水準 [271912485]
- 【朗報】あらゆるクレカ決済に5%のポイントを付与する「プラスPOINT」サービス開始 [923545898]
- 【速報】「安倍晋三の息子に生まれる」「天皇(当時皇太子の徳仁)の息子に生まれる」どっちがいい???生まれるのは1995年くらいとする [322239926]
- 【悲報】新宿駅の再開発、頓挫WWWWWWWWWWWWWWWW [253542839]
