17/05/30 23:25:03.18 CncaY8jR.net
>>883
なんとか理解できてるなら必要充分だってことでしょ。
まるで>>883以外は低能みたいに言ってはいかん。
899:あ
17/05/30 23:26:34.66 CncaY8jR.net
>>884
そうでもないだろ。
半コテでなんでここまで叩かれにゃならんのだ。
900:デフォルトの名無しさん
17/05/30 23:29:41.17 ixvaRPT7.net
全然必要充分ではない。現に二人誤解したし、俺も最初は誤解した
901:あ
17/05/30 23:42:29.76 CncaY8jR.net
>>900
誤解した人間が二人、誤解していた人間が一人、発言なく見えないどちらの状態かわからない人間が複数名。
これで有意差を出すなら、何人が母数なの?
自分の観測域で相手を評価するのは良くないと思うけど。
「自分と同じく誤解したが誤解が解けたか、誤解したままである」と周りを推定するのは、俺が相手は馬鹿ではないはずだと推定するのと同じでは無いのかと期待するのと同じレベルかと。
しかしまぁ、少なくとも議論スレならばもう少しマシな話がしたいし、不要な枕詞は使いたくないけど、まぁ通じないなら言い方をもうちょい気をつけるわ。
902:デフォルトの名無しさん
17/05/30 23:48:23.58 ixvaRPT7.net
そうしてくれ
903:デフォルトの名無しさん
17/05/30 23:53:22.51 8eoxxCqM.net
>>878
何の反論にもなっとらん
俺はHaskellに例外はないなんて言ってないしそもそも知らん
難癖もいいとこだな
904:デフォルトの名無しさん
17/05/31 05:55:34.28 4rMtQxoJ.net
>>891
SmallTalkが一番ウンコだと思った決め手は何?
905:デフォルトの名無しさん
17/05/31 06:14:00.96 wEozaoTa.net
>>879
では、具体的にGHCが実行時型情報を必要とするケースを挙げてみろよ。
言っておくが、パラメトリック多相は全てコンパイル時に解決されるし、
型クラスによるアドホック多相も、あれは関数オーバーロードの形式化だからな。
関数オーバーロードはコンパイル時に解決されるぞ。
さあ、具体的に挙げてみろよ。
906:デフォルトの名無しさん
17/05/31 07:43:00.95 uGw1TdWN.net
多分、エンジニアガイジの主張は
「rustはコンパイル時に多相を解決する能力がないので、その能力のあるHaskell と違ってデータ構造が作りにくいのは仕方がない」
みたいな感じと思われる。難解だけど
907:デフォルトの名無しさん
17/05/31 08:28:06.80 uGw1TdWN.net
逆だ「実行時に多相を解決能力がない」だ
908:あ
17/05/31 09:15:21.09 dc+IbjjD.net
>>903
あ、例外の一般化をしてる、ってのは「Haskellでは実行時にも多相の解決をする」ってのを「『Haskellでは多相の解決を実行時に必ずする』と一般化(というより誤解)してる」という意味ではないのか。なら的はずれな事言ってすまんな。
>>905
具体的に上げろと言われてもなぁ。
<T>を持ったenumがOptionかcar(T)とcdr(<T,T>)である時くらいかな。
>>906
そうそう。能力を敢えて持っていない、に近いけど。
実行時ゼロコストを目指してるから仕方ない。
909:デフォルトの名無しさん
17/05/31 09:37:51.17 uGw1TdWN.net
おお合ってたか。正直自信なかったんだよね
>>906を主張を三行に纏めるお手本にしてくれてもいいぞw
910:デフォルトの名無しさん
17/05/31 10:08:26.32 j+YATO3J.net
さすがに読み解けんわ……
エンジニアガイジは本気で伝え方の訓練した方がいい。
ID:uGw1TdWNみたいな有能な読み解き手がいつもおるとは限らんわ。
911:デフォルトの名無しさん
17/05/31 10:21:53.06 j+YATO3J.net
エンジニアガイジの主張がさっぱり伝わらない理由って何かと見返してみたが、
相手の反論を表面的にしか返さないせいだな。その質問がどういう疑問から出たかわかってない
「Haskellは実行時に型を解決する(からRustより型の表現力がある代わりにオーバーヘッドのトレードオフがある)」 って意見に
「Haskellもほとんどコンパイル時に解決できるわ」って反論が来たときに「ほとんどは全てじゃないだろ」なんてなにも伝わらん腐った返しするから伝わらないんだっての
「そのごく一部のおかげでそれが皆無のRustより型の表現力があるんだろ?」って、元の主張の()の部分を伝えればまだ理解してもらえるだろうに。
つまり疑問に対する反論が下手。
912:デフォルトの名無しさん
17/05/31 10:31:33.38 j+YATO3J.net
エンジニアガイジは相手が自分の主張に何か返してきたとき、「相手に何が伝わってなかったか」を考えるようにした方がいい。
それが出来てないから今はただ論破することしかできてない。
913:デフォルトの名無しさん
17/05/31 10:49:08.01 9eeNyIu8.net
ハイロンパしたいだけの奴に何言ってもね。。
914:デフォルトの名無しさん
17/05/31 10:55:14.91 WMdxYZmu.net
>>913
本当に「はい論破」したいだけなのか、かわいそうに論破スタイルしか議論の方法知らんのか俺には区別つかないからなぁ。
自分の意見の伝わらなさの自覚はありそうだから(現状人のせいにしてるが)後者にかけて長文投下した
915:デフォルトの名無しさん
17/05/31 10:58:50.65 xgELgHJk.net
彼はアスペルガー症候群でしょう
本人に非があるわけではないが、治ることもない
916:デフォルトの名無しさん
17/05/31 11:03:36.26 WMdxYZmu.net
>>915
確かに「相手の反論が何を疑問点として出てきたかを推察できずに表面的な論破をしたがる」っていうのは典型的なアレだが、
それだけで病気認定は俺にはできんな。健常者でも多少の訓練は必要な事柄だからな。
ただ可能なら診察は受けた方がいいかもわからんね。純粋な心配として。
917:あ
17/05/31 11:08:50.13 dc+IbjjD.net
>>911
一から百指摘しないと理解できません、って取ったらいいの?
>>912-913
全然論破もしてるつもりないけど。
反論はまともにしてほしいだけで。
論破スタイルってか、ストレートに言わないと議論にならんでしょ。
雑談所なら雑談するよ。
918:あ
17/05/31 11:10:55.99 dc+IbjjD.net
>>916
子供作るときに一通りそういう気質があるか調べてもらったが、幸いながらアスペではなかったぞ。
残念ながら多動はあった。
919:デフォルトの名無しさん
17/05/31 11:17:13.85 +xjBJZk4.net
ただのADHDってことか
気持ち良い納得感を得られる良スレだな
920:デフォルトの名無しさん
17/05/31 11:18:20.52 4nPr+Atc.net
ADHD以前に躁鬱でしょ
921:デフォルトの名無しさん
17/05/31 11:20:10.30 WMdxYZmu.net
>>917
一から百の全部を要求するやつは蹴り倒していいとは自分も思うが、一から百のうち任意のどこかを要求する人の相手くらいできんと人と議論は進まんぞ。
相手の疑問から一から百のうちどこの説明をするべきか読み取ろうという話
反論がまともに来ないのはこれまでの積み重ねのせいじゃないのか?
別に論破スタイルじゃなくてもストレートに議論はできるだろ。
922:デフォルトの名無しさん
17/05/31 11:21:41.06 WMdxYZmu.net
>>918
通院済みか。余計なお世話だったようだ。
923:デフォルトの名無しさん
17/05/31 12:19:10.63 uGw1TdWN.net
彼にガイジとニックネーム付けた奴の先見性高いと思わない?
924:デフォルトの名無しさん
17/05/31 15:24:55.30 jQ0rWyUQ.net
>>908
><T>を持ったenumがOptionかcar(T)とcdr(<T,T>)である時くらいかな。
コンパイル時に解決できないHaskellの多相の例がそれか?
おまえHaskell書いたことあるか?
925:デフォルトの名無しさん
17/05/31 15:27:38.08 jQ0rWyUQ.net
多動のせいで議論ができないんじゃなくて、
シッタカで主張が支離滅裂になっているのを
多動のせいだと思ったおまえらが勝手に辻褄合わせをしてあげて
なんだか最初からそういう主張をしているかのように
本人もおまえらも思い込んでいるだけ。
926:デフォルトの名無しさん
17/05/31 15:40:30.39 T8V/ATS8.net
>>925
別に多動のせいじゃないと俺は思うがなあ。多動ってそもそも議論できる出来ないに関係あったっけ?
単に意見の擦り合わせが絶望的に出来ないから知ったかと同じような議論破綻に突っ込む感じで、
ディベートを議論と勘違いしてるよくある感じのやつだと思ってる。
927:デフォルトの名無しさん
17/05/31 15:53:44.27 T8V/ATS8.net
俺はHaskellはトーシロ(死語)だから実行時に型チェックするパターンがあるかどうかなんて細かいこと分からんが
エンジニアガイジが「Haskellの型はほとんどコンパイル時解決だ」って言われたときに
やるべきだった反応は
「俺はこのパターンは実行時解決だと思ってたけど違ったか?」であって
「ほとんどは全部じゃねえよはい論破」じゃない。
こういうところが議論向いてないんだよな。
928:デフォルトの名無しさん
17/05/31 17:26:35.18 gpiwU3f+.net
(TvT)
929:デフォルトの名無しさん
17/05/31 18:22:27.22 EynlLbc5.net
>>908
enum?
もしかしてHaskellとScala間違えてんの?
930:あ
17/05/31 20:17:12.66 dc+IbjjD.net
>>921
相手の意見は汲み取れと言われながら、自分の主張は汲み取る必要が無いように余すことなく全て話せと言われると、
それは違う思う。
>>929
いや、完全に記憶だよりだからその辺違うなら違うんだと思う。
optionじゃなくてnilだった気もする。
なんと言うか、凄いな。Haskellを否定するだけでここまでヒートアップするのは。
スレタイからも抜けたし、否定し放題だとは思うが。
否定されるのが嫌ならHaskellスレに引きこもってりゃ良いのに。
931:デフォルトの名無しさん
17/05/31 20:44:50.62 uGw1TdWN.net
自分の意見が伝わりにくいことは現象として理解してる癖に、優しい人が理由を考えてあげると反論してしまい受け入れられない
誰かがいってた放置されてきた子って的確な表現だな
どんな優しい人でもこれは放置する
932:デフォルトの名無しさん
17/05/31 20:46:07.28 X6jg+zcK.net
言語についてテキトーな事を書いたらツッコミ入れるような奴が
このスレに集まってるだけだぞ
Haskell関係ない
933:デフォルトの名無しさん
17/05/31 21:11:21.68 43iY7lC1.net
>>930
>相手の意見は汲み取れと言われながら、自分の主張は汲み取る必要が無いように余すことなく全て話せ
それをお互いにやるんだよ。
でもどちらも人間なんだから限界あるだろ?そこを擦り合わせるんだよ。
それが論破合戦じゃない議論なんだよ。
934:デフォルトの名無しさん
17/05/31 21:29:09.19 43iY7lC1.net
もしかしてエンジニアガイジは自分の意見に反論や疑問が飛んできたとき、
「こいつは自分を潰しに来たから潰し返さないと」とか思ったりしてる?
935:デフォルトの名無しさん
17/05/31 22:25:13.36 ZWDZ9M4A.net
それできてる奴このスレにいるんですか
大抵潰し合ってないですかね
936:デフォルトの名無しさん
17/05/31 22:39:52.28 EynlLbc5.net
>>930
Haskellを否定というか、
明らかに間違えてるので、知りもしないで突っ込んでるとしか思えないが
937:デフォルトの名無しさん
17/05/31 22:43:08.23 EynlLbc5.net
というか、この人Haskell触ったことなくて叩いてるよね
食わず嫌いは勝手だからいいとしても、さも知っていて、かつ理性的かのように振る舞うのはどうなんだ?
素直に理由はないがキモいと言えばいいのに
938:デフォルトの名無しさん
17/05/31 23:51:50.75 meGSNm+f.net
>>851
大規模案件で採用されているゴミ屑PHPさんの悪口はやめろ
939:デフォルトの名無しさん
17/06/01 00:21:45.04 7sVuk+w7.net
まあルストはダメだってことはわかった。
940:デフォルトの名無しさん
17/06/01 01:21:00.20 P48QZU+o.net
>>930
>いや、完全に記憶だよりだからその辺違うなら違うんだと思う。
>optionじゃなくてnilだった気もする。
記憶違いのレベルでなく、それはどこからどう見てもHaskellの型とは似ても似つかない。
記法の問題でもない。
概念レベルから根本的にHaskellとは異なるものをHaskellの欠点と言い張っているだけ。
941:デフォルトの名無しさん
17/06/01 01:23:44.43 EiP2TW+2.net
carとcdr使う静的言語ってなんだ
942:デフォルトの名無しさん
17/06/01 01:29:53.69 P48QZU+o.net
型推論付きのSchemeか?w
943:デフォルトの名無しさん
17/06/01 02:27:16.60 8CaOxlMo.net
まあHaskell触った事ある奴はOptionとMaybe
Nothingとnilは間違えないよな
nullって書いても他言語とは全く異なるし
944:デフォルトの名無しさん
17/06/01 02:30:44.70 8CaOxlMo.net
あとBottomType的な意味でnilとか言ってもだめだぞ
ないからなw
945:デフォルトの名無しさん
17/06/01 02:55:42.04 wUNQCT/b.net
>>930
どこから見てもお前の言ってる事がおかしいぞ
論理的におかしい事をさも正しい事のように言ってるから叩かれてるだけ
946:デフォルトの名無しさん
17/06/01 03:12:08.82 z55iS7vV.net
どこから見てもおかしいというだけの主張が論理的なのか
947:デフォルトの名無しさん
17/06/01 06:01:07.41 8CaOxlMo.net
>>946
何を言ってるかわからないほど破綻してるから、おかしいで合ってるし
そして論理そのものは前提で変わり、妥当性とは関係ないので、お前の主張もおかしい
論理的云々と言うやつほど論理を知らない証左
948:デフォルトの名無しさん
17/06/01 06:44:41.63 vNOzF29i.net
関数型の思想を一切使わずアプリケーションをバグ無く作れる者だけが、彼に石を投げなさい
949:あ
17/06/01 07:44:01.52 xXOCh96c.net
おお、皆に言われるとHaskellをもう一度学ばないといかん気はしてきたな。
割とありがたいし、せっかくだからちょっとやってみるわ。
>>933
あーなるほど。それはわからんでもないな。
ただ、指導教官に昔言われた「不明点は察するな、現実を話させろ」を実践してて、
言ってしまえばアスペ的思考をしてたから、ちょっと慣れるまでに時間かかるかも。
実際役にもたったしね。その発想。
950:デフォルトの名無しさん
17/06/01 08:26:56.92 fZ4Ynj9f.net
みんなが言ってくれてんのはね
Haskellbヌうのこうのとb「うよりもまず
お前は重度の知ったか自己弁護野郎であり
さすがに付き合いきれないよってこと
たぶん、そういうとこは伝わってないんやろな
951:デフォルトの名無しさん
17/06/01 08:29:11.71 fZ4Ynj9f.net
文字化け修正:
Haskellどうのこうのというよりもまず
952:デフォルトの名無しさん
17/06/01 10:36:58.41 2zjIoc8f.net
>>949
>不明点は察するな、現実を話させろ
大学の研究室や学会では正しいが、2chっつーかネット越しの文字でやるには向いてない手法だな
手法は場によって選ぼうな?
あと自分が間違ってるかもしれないって懸念は常に持っとこうな。
953:デフォルトの名無しさん
17/06/01 10:39:52.18 2zjIoc8f.net
>>952
下段は今回のHaskellのことに限らず知ったかぶり悪循環に陥ることへのフェイルセーフな。
俺はHaskell詳しくないから知ったかかどうかわからんのだが一応。
954:デフォルトの名無しさん
17/06/01 11:08:27.45 Bx3/ibOs.net
治療法を察するな、症状を話させろ
Haskellを知ったかぶるのは大したことないが、医学を知ったかぶると命に関わる
955:デフォルトの名無しさん
17/06/01 11:26:50.36 UQSg1EaA.net
誤解の生じない自然言語が望まれる
956:デフォルトの名無しさん
17/06/01 11:27:26.76 HdFpeWhQ.net
ところで質問なんですが
Haskellの型クラスは裏でメソッド辞書を渡して実行時ディスパッチをするって読んだんですがこの理解で合ってます?
URLリンク(people.csail.mit.edu)
それともコールする関数の決定も何らかの最適化機構でコンパイル時にすませてしまうのでしょうか
957:デフォルトの名無しさん
17/06/01 11:48:38.71 Bx3/ibOs.net
>>956
C++のコンパイル時ダックタイピングと同じ
実行時ディスパッチではない
958:デフォルトの名無しさん
17/06/01 12:35:37.68 bubu+W4z.net
>>956
後者で合ってる
GHCの場合は最適化無しでランタイムにdictionary lookupするコードを生成
最適化でコンパイル時解決になる
指定なしなら通常は最適化される
959:デフォルトの名無しさん
17/06/01 12:56:45.70 sszEh+oH.net
>>958
なるほど
If the type of a function contains a class, then this
is translated into a dictionary that is passed at runtime.
The translation simply assures that the appropriate dictionaries
passed at run-time; ...
One drawback of our translation method is that it introduces
new parameters to be passed at runtime, ...
等々しつこく書いてあったのでてっきり今もランタイムかと。
その後コンパイル時に完結できるようになっていたんですね。ありがとうございます。
960:デフォルトの名無しさん
17/06/01 14:21:39.82 JVCP5RQG.net
>>959
念のため言うが、飽くまで一般の話だよ
上での言及のように例外なく、必ずcompile timeになるかどうかはわからない
普通に考えれば、呼出側だけでなく、モジュールに何か細工が必要だろうし
961:デフォルトの名無しさん
17/06/01 14:30:58.85 Ty12p446.net
>>959
調べてみたが、少なくともHaskell 2010ではCompile timeが保証されているようだ
というか88年の文献は、いくらなんでも古すぎないか?
962:デフォルトの名無しさん
17/06/01 19:59:34.59 vNOzF29i.net
他者と誤解なく分かりあえるようになるための共通言語を開発しよう
もちろん、人と人だけでなく、人とコンピュータも分かりあえる共通言語だ
それこそが次世代言語だ
963:あ
17/06/01 20:05:18.45 23mplHvr.net
>>952
ネット越しだからやるべきかとは。。
>>961
ヨコからだけどありがとう。参考になるわ。見てくる。
>>962
エスペラントを一歩すすめる時代か。
964:デフォルトの名無しさん
17/06/01 20:18:08.98 Dnfnpswj.net
>>963
やった結果がお前さんの現状なんだよな。
965:デフォルトの名無しさん
17/06/01 20:42:26.57 sszEh+oH.net
>>961
Haskell 2010 でもまだランタイムに依存しているみたいだけど違う?
URLリンク(stackoverflow.com)
966:デフォルトの名無しさん
17/06/01 22:45:39.05 14pfKSNM.net
あらゆるモダン言語で見るようになったmapとかflatmapっていうのはどこから生まれたものなの?
967:デフォルトの名無しさん
17/06/01 22:50:28.99 W7qZGWEB.net
LISPじゃね
968:デフォルトの名無しさん
17/06/02 00:08:33.62 lDZ3L3oh.net
>>965
ちょっと話が見えないんだが、もしかして回答してほしいのは
>URLリンク(people.csail.mit.edu)
に限定した話ではないのか?
保証については、再帰がない場合の話で、その参照先は>>959とは状況違う
その場合>>958 + >>960という回答になる
969:デフォルトの名無しさん
17/06/02 02:50:18.61 bQ6pitWP.net
再帰があっても深さを制限すればspecializeできるんじゃね
制限を超えたらエラーにするか、あるいはspecializeをやめたら無限に再帰できるか?
970:デフォルトの名無しさん
17/06/02 07:14:02.17 vc1fSB5M.net
>>968
あ、いえ、すみません
>>958+960 で理解の確認はできています
ありがとうございます
ただ一方で >>905 >>957 >>961 みたいな主張もあるようなので
最新の実装では型クラスを取り巻く状況もかなり違ってきているのかなと
971:デフォルトの名無しさん
17/06/03 09:45:16.91 1Cu2c1ce.net
これ互換性にあまり影響のない実装の変更だよね
それより互換性が完全になくなった変更を批判する方が建設的