2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

関数型言語とオブジェクト指向型言語って

1 :デフォルトの名無しさん:2021/01/10(日) 00:21:41.15 ID:dzQMColf.net
どっちが優れてるんですか?
親切な人教えて下さい

2 :デフォルトの名無しさん:2021/01/10(日) 00:23:25.30 ID:8NmrobQc.net
うーん
どっちかって言うと千と千尋のほうが好きかな

3 :デフォルトの名無しさん:2021/01/10(日) 00:38:09.64 ID:pzwk9NYM.net
自動的に並列化するのでマルチコア時代には関数型が優れているとHaskellの紹介サイトに書いてあったな。
ベンチも載ってたけど、平均してC/C++の10倍ほど速いみたい。

4 :デフォルトの名無しさん:2021/01/10(日) 05:46:15.75 ID:39vDGnyn.net
何を持って優れているとするかによるけど僕は関数型の方が好き.

5 :デフォルトの名無しさん:2021/01/10(日) 09:56:30.90 ID:luDzYgac.net
>>1
単純にどっちかが優れてるなんて言えるわけないだろう
ドラゴンボールのだれそれのどっちが強いってのと同じ程度に不毛な話

6 :デフォルトの名無しさん:2021/01/10(日) 11:16:51.27 ID:7q9UaFF7.net
副作用を排除するっていうのは、どの言語でもできるだけ真似たほうがいいと思う
並列コレクション使うだけで並列化できるってのも、関数型言語だからじゃなく副作用がないからできることだし

7 :デフォルトの名無しさん:2021/01/10(日) 11:30:12.64 ID:83i1A6Qi.net
アフィ活スレにマジレスする養分たちw

8 :デフォルトの名無しさん:2021/01/10(日) 12:55:25.87 ID:E3UkhtRT.net
そもそも関数型とオブジェクト志向は背反する概念では無いだろ

9 :デフォルトの名無しさん:2021/01/12(火) 22:58:20.87 ID:BGoPpVSA.net
それが合体した言語ってないの?

10 :デフォルトの名無しさん:2021/01/12(火) 23:04:31.66 ID:X0EWuMM2.net
外から見て同値であれば同一と見做すのが関数型。同値であっても異なる存在である場合があるのがオブジェクト。

11 :デフォルトの名無しさん:2021/01/12(火) 23:13:09.60 ID:/WJ9ShSR.net
背反ではないかもしれないけど、少なくともFPをちゃんとサポートした関数型言語においてはOOP的特徴は蛇足でしかない
オブジェクト指向言語でマルチパラダイムを謳っている言語でまともにFPできてる例もあんま知らない
オブジェクト指向言語は変に関数型を取り入れたりしないで素直にOOPを極めた方がいいと思うし、関数型言語はFPだけに特化した方がいいと思っている

12 :デフォルトの名無しさん:2021/01/13(水) 14:23:45.53 ID:tLUt5qTN.net
>>6
言語で束縛しなくても書き手が理解していたら出来ない事ないんだけどな
アルゴリズム中の読みやすくするための値を一時格納する変数は必要としても

全体処理の中にある散乱してる副作用はなんでこれで良いと思った?っていつも思う
副作用無しにするコードが書けてなくて、どのクラスもメソッドも万遍なく副作用を持ってるとか…
OOPにおいてもゴミだわ

13 :デフォルトの名無しさん:2021/01/15(金) 02:23:50.45 ID:Hai3vgIl.net
forthなんかは逆に副作用しか無い言語だけどコードの見通しはいいよな
環境という一つの値をパイプライン処理する
OOPってのは真ん中あたりかな?

14 :デフォルトの名無しさん:2021/01/15(金) 02:32:51.03 ID:Hai3vgIl.net
forthなど連鎖性言語と純粋関数型言語は主と副を入れ替えただけの同等物な気がしてきた

15 :デフォルトの名無しさん:2021/01/15(金) 02:50:41.40 ID:Hai3vgIl.net
パラダイムが違うから関数型用語で言い換えてる、念のため
演算は全て破壊的でなければいけないという教義の言語だけど、そのおかげでソース上ではその前後だけ見れば良い
預かり知らぬところで変なことが起きる事はない

16 :デフォルトの名無しさん:2021/01/15(金) 03:04:41.52 ID:mwLxITR0.net
何を指向しようがそれでコンシステントに書けば混乱は起きない
関数型だからとかは関係なくて、ただの一般論

17 :デフォルトの名無しさん:2021/02/09(火) 16:49:18.04 ID:Ab8vhkWR.net
全部イミュータブルにしとけば関数型もオブジェクト指向も同じことでは?

x.f()はf(x)と同じ
x = new X(p); x.f()はf(X(p))と同じ

ただ書き方が違うだけ

ただイミュータブルな前提ならオブジェクト指向のほうが業務的な意味合いをわかりやすく表現しやすい
なので関数型よりイミュータブルオブジェクト指向のほうが優れている

18 :デフォルトの名無しさん:2021/02/09(火) 16:51:35.66 ID:Ab8vhkWR.net
それに関数型言語は現実世界に対応できない
副作用がない、は理想だけどそれはあくまでも理想だ
理想現実は違う

19 :デフォルトの名無しさん:2021/02/09(火) 22:27:58.86 ID:Rh87rJZX.net
オブジェクトってのはデータとメソッドをカプセル化したものであって、
レシーバを書けばオブジェクト指向ってわけじゃなかろう。

20 :デフォルトの名無しさん:2021/04/08(木) 00:15:32.66 ID:vNjTkeHz.net
オブジェクト指向のほうが業務的な意味合いをわかりやすく表現しやすい←嘘

21 :デフォルトの名無しさん:2021/04/08(木) 00:16:42.49 ID:vNjTkeHz.net
関数型言語=副作用がない って言ってる時点で関数型をちまたの注意をひくためだけの文言しかなぞってなくて
ちゃんと関数型言語を使ってないって自白してるのと同義だから、OOPしか使わない人の関数型ディスは読む価値がない

22 :デフォルトの名無しさん:2021/04/08(木) 01:15:04.53 ID:U1NM3H1Y.net
関数型にハマったバカとオブジェクト指向にハマった馬鹿を比べた場合、
関数型にハマったバカのがまだ話が通じる。

23 :デフォルトの名無しさん:2021/04/16(金) 02:32:21.76 ID:uUb2kLFv.net
変数なんてまやかし、あるのはグローバル状態のみ
型もまやかし、キャストも甘え、あるのはビット列だけど、それも本質ではなく添字付けられる整数を表しているだけだ
Forthを感じろ

24 :デフォルトの名無しさん:2021/04/16(金) 11:34:05.33 ID:KoVFUOYi.net
OOPは駄目技術の烙印押された感は同意するけど、純粋関数型もコンパイラの最適化に頼りすぎてイマイチだろ
再帰はデメリットが目立ちすぎる。総てを無理やり賄おうとするより命令型のループで済ませ方が自然で可読性も高い
そもそも手続きの最適化を考えて書く行為が関数型の思想じゃないけど、これは組み込みとかで必須だし、これからも無くならない

25 :デフォルトの名無しさん:2021/04/16(金) 18:46:37.56 ID:f9bM7YoK.net
最近、面白そうだと思って関数型勉強してるけど、正直

「記憶のスタックにいろいろプッシュしながら読ん
でいって、適宜それをポップする」って作業が
かなりつらい…。

わかると、ものすごい納得感があるんだけど、これって
一般的なのかなと。

26 :デフォルトの名無しさん:2021/04/16(金) 22:20:52.85 ID:V2If8tRe.net
スタックコメントつけよ

27 :デフォルトの名無しさん:2021/04/17(土) 13:28:57.05 ID:ohP60UMx.net
>>24
だめとは言わんけど変な押し付けする奴はかなり出回った。
関数型も同じ道をある程度進むと思われるが、OOPほど主張として広がりは見せてないところは
まだ悪影響は少ないと感じる。

28 :デフォルトの名無しさん:2021/04/25(日) 22:34:38.58 ID:egZ1yhGS.net
プログラミングテクニックの域を脱出してるの?これ。

29 :デフォルトの名無しさん:2021/06/15(火) 12:37:15.20 ID:vhbon9Jn.net
テクニックを積極的にサポートするかしないかの違いだろ?
引数を取る機構とポインタさえ存在すれば常に関数型プログラミングはできるし、名前空間と継承&インスタンス関係を示すデータ構造があればクラスベースオブジェクト志向プログラミングはできる
後者のスタンス取ってるのはpythonだな、全てユーザー定義用と同じ辞書で実装してる(丸見え)

30 :デフォルトの名無しさん:2021/06/15(火) 12:47:16.58 ID:vhbon9Jn.net
引数や名前空間機構すらないpsやforthでOOPや関数型プログラミングする為の小さいスクリプト落ちてるし、変に言語仕様で縛らない方がいいと思う
仕様で縛られない限り誰かがどこかで書いてるから、適宜自分の好きなスタイルに書き換えて使え

31 :デフォルトの名無しさん:2022/01/19(水) 22:36:36.87 ID:mGakhJ8G.net
仕組みが用意されてるかどうかの違い
もともとは関数型言語の構造体を使って各自が実装していただけで、やってることは同じ

32 :デフォルトの名無しさん:2022/04/09(土) 07:41:07.85 ID:OA+lRtl7.net
関数型とオブジェクト指向が合体したらいいのにな(´・ω・`)

33 :デフォルトの名無しさん:2022/04/30(土) 22:25:26.11 ID:7WDludzk.net
>>32
OCaml や F# はどうよ

34 :デフォルトの名無しさん:2022/09/25(日) 20:37:51.35 ID:cTy3tMOx.net
最近のプログラミング言語の多くはマルチパラダイム言語だから
手続き・命令型、オブジェクト指向型、関数型などの宣言型プログラミングに
その言語なりのやり方で対応していたりする。

特定のプログラミングポリシーに特化された言語もあるけれども、
プログラマーの好みや用途に応じて臨機応変に使い分けられるんじゃないかな。

35 :デフォルトの名無しさん:2024/04/03(水) 01:22:09.51 ID:uXmmaImNs
第ニのエ儿ピ─ダ確定の価格下落しまくり半導体の次はAIに税金2000億とか天下り税金泥棒無能公務員には反吐か゛出るな
世界最惡脱炭素拒否テ口国家に送られる化石賞4連続受賞して世界中から非難されながら憲法13条25条29条と公然と無視して力による―方的な
現状変更によってクソ航空機倍増、閑静な住宅地から都心まて゛数珠つなき゛て゛鉄道の30倍以上もの莫大な温室効果カ゛スまき散らして騒音まみれ
静音が生命線の知的産業壞滅させて天下り賄賂癒着してるナマポ集団NTTだの不治痛だのと税金泥棒のネタにしてるた゛けなのか゛バレバレ
ポンコツ技術後進国を脱却する氣などサラサラないのはクソ航空機の陸域飛行禁止しないことからも明らかだろ
都心から離れすぎない地に飛行禁止区域を作るた゛けでも2兆円以上の技術発展を確保て゛きるがクソ無能公務員の手作業による税金泥棒ネ夕
維持のために気候まで変動させて土砂崩れ.洪水,暴風,熱中症にとマッチポンプ丸出しで住民殺して私腹を肥やす気満々だわな
最近日本企業か゛AI參入してるがスマホアプリの内部コ一ト゛同様パクって搭載してるだけて゛四六時中スパイ通信してるスマホのニの舞た゛からな
(ref.) ttps://www.call4.jp/info.php?type=items&id=I0000062
ttps://haneda-project.jimdofree.com/ , ttps://flight-route.com/
ttps://n-souonhigaisosyoudan.amebaownd.com/

10 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★