[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2ch.scのread.cgiへ]
Update time : 10/13 04:35 / Filesize : 243 KB / Number-of Response : 957
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

次世代言語議論スレ[Rust Kotlin Haskell]第6世代



1 名前:デフォルトの名無しさん [2017/08/28(月) 21:53:37.12 ID:5I+bTEeA.net]
※前スレ
次世代言語議論スレ[Go Rust Scala Haskell]第5世代
mevius.2ch.net/test/read.cgi/tech/1497311647/

552 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 09:40:23.50 ID:meNSbSun.net]
あと全く知らないものを、まるで知ってるかのように振舞ってディスってたっていうのも問題だな
あんだけ散々ディスってたくせに知らんのんか〜いって思った

あれ以来、こいつは知ったかぶりする傾向があるから動くコード書くまで信頼出来んと思ってる

553 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 09:43:04.73 ID:yYGRyM8i.net]
そいつは極度の知ったか自己弁護野郎だから、みんなよく観察するように。

554 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 09:53:58.35 ID:qH6V6v7k.net]
どっちもどっちだな

555 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 10:04:00.22 ID:OlAvSaNc.net]
Cのマクロは人でも読めるコードを生成してくれるから良かった
だがマクロよりインライン関数の方がすごいんだという謎のマウンティングが始まった
人にコードを見せる習慣がなくなったのはそういう歴史の影響があるんだろう

556 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 11:12:40.40 ID:qH6V6v7k.net]
インライン関数は展開されないときもあるからマクロの方つかっちゃうな

557 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 11:30:55.10 ID:meNSbSun.net]
展開されない時って、コンパイラ判断として展開しないほうが良い時なのでは……?
いやコンパイラに任せるより手動で最適化したほうが良いような実力者なら知らんけど

558 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 11:36:58.65 ID:qH6V6v7k.net]
コンパイラーの判断は機械的に判断するから間違ってることも多いからな。

559 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 11:47:06.69 ID:OlAvSaNc.net]
実力者になった後で手動にするか、手動にした後で実力者になるか
現金で買うのとカードで買うのはどちらが賢いかというのに似ている

560 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 11:49:12.59 ID:meNSbSun.net]
はえー。俺はコンパイラより正しい判断が出来る自信はないから全部コンパイラに任せてるわ
いやすごいな。-O0でコンパイルして-O3並みの速度出せたりすんの?



561 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 12:03:51.93 ID:qH6V6v7k.net]
コンパイラの最適化は速度を優先するかメモリを優先するかバランスとってるからね。
俺みたいな速度最優先の少数派のことなんか考えてくれてないから自分でやるだけ。

562 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 13:32:21.76 ID:CdIs01F3.net]
-Ofast は速度最優先だと思ってたけどそうでもないのか

563 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 14:02:50.79 ID:32CWNlSU.net]
>>547
詭弁もいいとこだな
どこがコードなんだよ

オペランドすら記述していない上に、
結局大部分を文章で説明している
それでも、すべて支離滅裂な文よりはいくらかマシだが

564 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 14:07:16.46 ID:32CWNlSU.net]
そしてオペコードをコードと言いながら>>528で、最適化でコードが変わる事ではないという言い草
恣意的にレスしてるのがまるわかり

565 名前:デフォルトの名無しさん [2017/09/20(水) 14:50:54.31 ID:rh0oGGav.net]
あのー結局のところHaskellが良さそうだけどモナドっていうのが分からないとつかえないの?
それともモナドとか分からなくてもそこそこ普通に使えて、しばらく使ってたらモナドとかも雰囲気でなんとなく分かってくるものなの?

YouTuberで圏論の勉強会ビデオ四回目まで見たけどなんとなく理解はできたの
結局のところ集合と関数をより抽象化して記号化していろいろやってるんだよね?

566 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 15:00:39.54 ID:f95dJFKd.net]
モナドはまあ満たすべき性質ではあるけれど、別に理解してなくても問題ない。
コンパイラもモナド則をチェックするわけでもないし。

567 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 15:30:18.35 ID:qH6V6v7k.net]
俺はネットに無料で上がってる凄いH本よんだけど圏論何て一つもでてこなかったけど
モナドはわかったぞ。

568 名前: mailto:sage [2017/09/20(水) 15:44:48.04 ID:0AKG+c7B.net]
テンションすげえな。水曜なのに。

569 名前:デフォルトの名無しさん [2017/09/20(水) 17:03:51.19 ID:66cdr9VM.net]
モナドとか分からなくてもなんとかいけるんやー
ちょっとがんばっておぼえてみよーっと
ありがとー

570 名前:デフォルトの名無しさん [2017/09/20(水) 18:09:54.14 ID:66cdr9VM.net]
Ryzenとか出てきてこれからは6コア、8コアあたりまえになったらマルチスレッドとか大切になるんだとおもうの
それでちょびっとぐぐったらどうも関数型プログラミング言語はどれもマルチスレッドが得意らしいの
だからやっぱり関数型プログラミング言語が流行よね
そんな気がするの



571 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 18:21:45.19 ID:8NhAmDw4.net]
もうみんなコテハンつけたら?
ここにいるのって、どうせいつも同じ人間じゃね?

572 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 18:29:38.52 ID:eqHukz4h.net]
Haskellの並列ってあんまりマルチスレッドって認識してなかったけど、たしかにマルチスレッドあるな

573 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 18:35:57.38 ID:OlAvSaNc.net]
関数型の入門書はパターンマッチができるデータ構造ばっかり教える
クロージャやモナドはパターンマッチができない構造なのに

574 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 19:12:54.78 ID:meNSbSun.net]
そういや、なんでこのスレOCamlいないんだっけ?

575 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 21:15:05.03 ID:+ftcwVio.net]
関数型全般はさておきHaskell自体は並列処理書きづらいイメージがあるんだけど気のせいか

576 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 21:36:57.21 ID:meNSbSun.net]
あんまり詳しくないんだけど、Haskellの並列だと、いくつかの関数をそれぞれ1スレッド(プロセスだったかも?)に割り当てて並列で計算するのが印象に残ってる。
えらい簡単に並列化出来るんだなって思った記憶ある
なんだっけなあのライブラリ

577 名前:デフォルトの名無しさん [2017/09/20(水) 21:42:45.54 ID:ej6oPx0l.net]
純粋な関数は並列化簡単だからね

578 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 21:59:48.39 ID:OlAvSaNc.net]
インターネットとマルチスレッドを区別しないと
マルチスレッド派はガベコレ廃止してborrowチェックしないと

579 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 23:27:02.45 ID:ocgI6/Nq.net]
Kotlinの気に入らないところ
anopara.net/2017/09/16/kotlin%E3%81%AE%E6%B0%97%E3%81%AB%E5%85%A5%E3%82%89%E3%81%AA%E3%81%84%E3%81%A8%E3%81%93%E3%82%8D/

580 名前:デフォルトの名無しさん mailto:sage [2017/09/20(水) 23:43:37.21 ID:XmuyR82X.net]
>>576
HaskellだとControl.Parallel.Strategiesを使うと
map関数が容易に並列化できてお手軽だった
ちゃんと使おうとするとWHNF(Week Head Normal Form)だとかの理解を要求されるので
そういう敷居の高さはあるけど



581 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 01:50:38.06 ID:QW6vwaf/.net]
>>579
この人はScala大好きのようだが
同様に誰かにのScalaここが嫌だと言われそうなレベルの話で
ふーんでおしまいだなあ。

582 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 05:23:51.87 ID:r0JkAuLO.net]
{ "aaa" }
このラムダ式の凄さが分かって無いな。
ルビーでいうとブロックが何個でも持てるるのと同じことなのにな

583 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 06:47:08.30 ID:aDCr5zcn.net]
>>582
どういうことだってばよ?

584 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 07:06:13.16 ID:r0JkAuLO.net]
>>579
に言っている

585 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 07:08:49.84 ID:r0JkAuLO.net]
わかりやすくいうと
javascriptのcallbackのfunction()という邪魔な奴が消えて見やすくなるということ

586 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 08:36:52.83 ID:q4h3VbHC.net]
Kotlinのパターンマッチは確かにC#の最新版にすら抜かれたダメな子だが、
nullのくだりは全く同意できないな
そもそもScalaにnull safetyなんか無くね

587 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 09:32:12.51 ID:5FG4CErg.net]
>>586
c#のパターンマッチはまだ中途半端なのに、それに抜かれたとはヤバイな

588 名前:デフォルトの名無しさん [2017/09/21(木) 12:19:06.27 ID:xGEE8GqX.net]
>>555
inlineの方がいいのは型チェックあるからだろ

589 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 12:30:12.98 ID:r0JkAuLO.net]
俺の場合引数が殆どdoubleかintだから型チェックは意味ないんだよな。

590 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 14:07:02.73 ID:+Jhp3IyY.net]
doubleかintしか使わないなら意味あるが、2つ使うなら意味あるだろ。
しかも、完全にじゃなくて殆どならなおさら。
型の意味わかってないだろ。



591 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 14:11:01.15 ID:iqJkS7HX.net]
JavaScript「型なんて飾りです」

592 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 15:01:32.35 ID:gDFFhm4z.net]
>>590
間違いやすくてかつ間違うと致命的なバグを生むからな

593 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 15:22:16.77 ID:r0JkAuLO.net]
一番間違えるのは引数の順番と数

594 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 15:43:39.40 ID:SPES50ix.net]
>>593
doubleとintの順番ミスったら大変だもんな

595 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 16:29:56.24 ID:rIFSqMAF.net]
C のデバッグしてると int -> double も明示的に変換するように設計されてりゃよかったのにと思うことが多い。
python3 の int と float をごっちゃにあえてしたのなんてありゃ失敗だろ。型を弱くしてどうすんだっていう。

596 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 18:44:57.78 ID:V4ctP0WJ.net]
次世代言語では、データとかを引数で渡すって方法に新たな工夫が欲しいね

597 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 20:03:14.13 ID:1e+K8/4+.net]
>>596
たとえば?

598 名前:デフォルトの名無しさん mailto:sage [2017/09/21(木) 22:58:59.34 ID:2mLwGNyW.net]
doubleとintを間違える可能性は確かにあるけど
座標とかはdoubleとdoubleだったりintとintだったりするだろ
それを間違える可能性まで網羅しないと致命的じゃないか

型システムに都合の良い範囲を想定してしまったらかえって想定外の盲点が増えてしまう

599 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 01:01:11.41 ID:yLA4yX5X.net]
>>598
型システムがきちんとしてる言語であなたが考えてるような設計はしない

600 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 01:09:22.44 ID:VcH/r1aN.net]
intとdoubleを明確に区別するといえばOCamlだが、あれは流石にやりすぎと感じる。にわか感想だけど



601 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 03:19:07.10 ID:g4HdW9MF.net]
暗黙の型変換の邪悪さは経験積めばわかる
あとIntへの型変換はHaskellが一番ドイヒー

602 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 05:18:45.27 ID:A2XKXMkJ.net]
経験積めばわかる、ですむなら静的型いらねぇよ

603 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 05:39:47.03 ID:g4HdW9MF.net]
>>602
ソースの見通しが悪くなってバグの検出が難しくなる

604 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 07:53:43.74 ID:eIMWXunI.net]
IDE補完が効きまくるという点で静的型が好き。
phpStormとか使うとphpでも補完効きまくるようになるん?

605 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 08:34:49.37 ID:ig88NjIH.net]
>>601
10年以上Haskellメインで使ってますが、
あなたの言うIntへの型変換の「酷さ」が分かりません。

他言語と比べて何か問題あるのでしょうか。

606 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 09:10:52.08 ID:eIMWXunI.net]
>>605
Haskellメインの現場ってどういう環境です?研究職?

607 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 09:45:24.85 ID:eeRMTLx0.net]
Haskellみたいなのを研究に使っていたら逆にやう゛ぁいわ
メインはホビーだろ

608 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 09:49:39.95 ID:Q4+Qj6om.net]
まず初めに現場かホビーかの分岐があるのになぜ現場に限定するのか

609 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 11:00:09.62 ID:g4HdW9MF.net]
>>605
え?計算毎にいちいちNum経由にするのが酷くないって?
お前もしかしてHaskell使ったこと無いんじゃないの?

610 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 11:06:23.68 ID:g4HdW9MF.net]
Haskellメイン(仕事とは言ってない)

コンパイラとかの文字列処理や、モデルの妥当性検証とかに使うならまだしも、
数値計算でHaskellw
Repa位しか優位性ないだろ



611 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 11:40:01.90 ID:ig88NjIH.net]
>>609
Numは型ではなく型クラスです。

具体的には、どの型からInt型への変換が酷いのでしょうか。
Stream Fusion は働かないのでしょうか。

612 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 11:45:22.74 ID:ig88NjIH.net]
>>609
失礼、Stream Fusion と言うより、書き換え規則ですね。

書き換え規則が働けば、大抵の型変換は必要最小限のオーバーヘッドで行われる筈です。

613 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 11:47:26.66 ID:g4HdW9MF.net]
>>611
Numが型だとも型クラスでないとも言ってないし、
Stream Fusionだろうと変換はいるけど?
お前さっきから何知ったかぶってるの?

614 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 11:48:26.85 ID:g4HdW9MF.net]
>>612
「はずです」って、それ結局自分で書くだけだろ?

615 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 11:49:20.78 ID:g4HdW9MF.net]
こういう机上だけで語るクソ野郎がいるからHaskellは嫌い

616 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 12:01:58.15 ID:Q4+Qj6om.net]
例えばInt型の3って名前の関数をNumタイプクラスの3って名前の仮想関数に変換する関数で
変換してそれをDoubleを使う関数にいれるパターンだよな。

617 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 12:09:13.20 ID:XD+YRvZx.net]
だから具体的なコード書けって。変な勘違いしてるかもしれないんだから

618 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 12:33:30.94 ID:A2XKXMkJ.net]
仮想関数は酷いってのは常識になりつつある
オーバーロードはいいがオーバーライドは酷い
だがオーバーロードとオーバーライドを勘違いする非常識なやつもまだいっぱいいる

619 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 12:52:13.95 ID:7Suyvrun.net]
オーバーロードこそゴミだろ
型が柔軟になればなるほど邪魔になる

620 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 13:14:10.74 ID:ig88NjIH.net]
>>601
ある型の値をInt型の値へ変換する際にあなたにとって酷いことが起きる、
あるいはあなたにとって酷いプログラムコードになる、という話ですよね。

>>609
Int型への変換の話の中で「Numを経由する」という言い方を聞いて、
あなたが Num を型だと勘違いしていると思いました。
大変失礼しました。

ある型の値をInt型の値へ変換する際は一度Num型クラスのインスタンス型の値へ変換し、
それを改めてInt型の値へ変換しないといけない、
あるいはそういう型が多い。
あなたはそう思っているのでしょうか。

もしそのような場合でも、私書き換え規則があれば経由しないようにできると私は言いました。
標準ライブラリの中で定義されている型で、
頻繁にInt型への変換が必要と思われる型に対しては、
書き換え規則がライブラリ内に書かれています。
自分で書く場合も一度書けば済むだけみます。
これが酷いのでしょうか。

改めて聞きますが、具体的にはどの型の値をInt型の値へ変換する際に、
Num型クラスのどの型の値を経由しなければならないのでしょうか。



621 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 13:37:46.62 ID:g4HdW9MF.net]
>>620
>改めて聞きますが、具体的にはどの型の値をInt型の値へ変換する際に、
>Num型クラスのどの型の値を経由しなければならないのでしょうか。
だから全部自分で書いた話だろそれ
VanillaじゃIntとIntegerすら必要だろ

そんな事言ったら何らかの形で暗黙の型変換許してる言語全部そうだわ
お前マジで頭の病院行ったほうがいいんじゃねえの?

622 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 13:55:56.62 ID:Q4+Qj6om.net]
どっちもどっちだな。
両方病院言ったほうがいいかも。

623 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 14:14:32.59 ID:A2XKXMkJ.net]
言語の問題を医学部に丸投げするなよ
今ここで必要なのは法学部か文学部のような能力だという現実を受け入れろよ

624 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 14:19:32.05 ID:ig88NjIH.net]
>>621
Integer型の値をInt型へ変換する際に、
Num型クラスのどのインスタンス型にまず変換する必要があるのか、
その型を教えて頂けないでしょうか。

625 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 14:52:17.51 ID:XD+YRvZx.net]
具体的なコードを示せないのは、具体的なコードを示すとボロが出るからw

626 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 14:56:44.72 ID:g4HdW9MF.net]
>>624
はあ?Int側にするならNum Integer経由だろ?
お前さっきから関係ない話ばっかりじゃねーか

627 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 15:01:10.70 ID:g4HdW9MF.net]
>>625
書くまでもない気がするが一応な
https://ideone.com/MjF75Z
https://ideone.com/es7fao

628 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 15:10:56.24 ID:XD+YRvZx.net]
ほわ?そのコードの何が問題なんだ?
上も下も非常に妥当な挙動に見えるんだけど、いったいどうなって欲しいんだ?

629 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 15:11:44.73 ID:g4HdW9MF.net]
ああ、意図がわかった
こいつIntegralをNumって言った事とっかかりに揚げ足取りしたいんだな
IntegralはReal通してNumのサブクラスですよクソ野郎

630 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 15:14:53.86 ID:g4HdW9MF.net]
>>628
このクソ冗長なコードが妥当?w
これを解決するための機能まで作っておいて?w



631 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 15:28:32.33 ID:ig88NjIH.net]
>>627
fromIntegral 関数は、Integer型の値をInt型の値へ変換する際に、
どのような他の型へも変換しません。
経由しません。

Inreger型の値をInt型の値へ変換するのにNum Integer を経由、
という言い方がおかしいと思うのですが。

632 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 15:41:26.97 ID:g4HdW9MF.net]
>>631
言葉遊びばかりだな
fromIntegralはfromIntegerを使う時点でNum経由
あといちいち俺が言っていないことさも言ったかのように決めつけて反論するの、やめてくれないかな?

633 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 15:41:29.25 ID:Q4+Qj6om.net]
でもIntをDoubleに変換するときは2回変換するんだろ。

634 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 15:54:31.81 ID:g4HdW9MF.net]
そもそもHaskellで数値計算なんて
チューンしたところでLL並の速度なのに何を躍起になってんだか…
このクソ野郎には適材適所という言葉を送りたい

635 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 15:59:41.73 ID:ig88NjIH.net]
>>632
fromIntegral = fromInteger . toInteger

Integer型の値からInt型の値への変換はどこも経由しません。

例えばWord型の値からInt型の値への変換は、
書き換え規則を働かせないようにわざわざすれば、
Integer型の値へ変換されてからInt型の値へ変換されます。

ですが、このような変換の書き換え規則を働かせないようにするメリットがありません。
初めから標準ライブラリに書かれていて、
プログラマは意識する事無くそれを使っているのだから。

ちなみに、私は>>627のコードが冗長だとは特に思わないです。
文字fromIntegralが長いと感じるのであれば、
fiにでも変えればいい話ですし。

636 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:07:10.71 ID:Q4+Qj6om.net]
だから冗長な文を書くんだろうな

637 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:16:34.49 ID:2BEAGAP4.net]
上のが通ったらそれ暗黙の型変換じゃね?
そのほうが怖いわ

638 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:20:54.19 ID:XD+YRvZx.net]
>>630
え、何? まさかそこで暗黙の型変換して欲しいの?

639 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:25:12.12 ID:g4HdW9MF.net]
>>635
だからそれfromInteger使ってんだろ
そしてIntとWordが例外なのに、さも他に定義されてるように言いやがるし
詭弁が多すぎ

640 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:30:27.19 ID:g4HdW9MF.net]
>>637
あらゆる型で変換が必要だからおかしいんだよ
比較的面倒くさいOCamlでさえ1キャストで済む



641 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:31:40.02 ID:ig88NjIH.net]
>>639
他にも色々な型の書き換え規則が定義されています。

ここで全て挙げるのはさすがに勘弁してほしいので、
興味がおありなら標準ライブラリを調べてみてください。

642 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:36:07.88 ID:g4HdW9MF.net]
>>641
いやお前が言い出したんだから、お前が挙げるんだよw
よくもまあこんな適当な事をw

643 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:37:20.96 ID:g4HdW9MF.net]
そしてこれが現実w
hackage.haskell.org/package/base-4.10.0.0/docs/src/GHC.Real.html#line-442

644 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:37:24.43 ID:XD+YRvZx.net]
そもそもIntとIntegerを混ぜて演算する時なんてそうあるか?
浅学非才な俺には設計が悪いとしか思えないんだけど。どういう時に必要なんだ……

645 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 16:42:22.60 ID:g4HdW9MF.net]
>>644
逆だぞ
そんな型揃えてまで速度欲しい具体的な演算を想定したら
Haskell自体を使わない

646 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 17:05:23.17 ID:XD+YRvZx.net]
>>645
いや、速度関係なく、取り敢えず型は揃えとかない?
関数作る時にわざわざ一つの引数はIntegerで一つはIntとかせんだろ?
俺は大体全部Intで作ってるから、Integerは即Intにしてるわ。みたいな

647 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 17:09:55.82 ID:ig88NjIH.net]
>>643
そのファイルだけではなく、他にもあります。
grepかけてみてください。

648 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 17:53:28.33 ID:ZDWEQPwS.net]
>>619
おっと、型クラスへの罵倒はそこまでだ!

649 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 20:04:54.06 ID:yMB3txhD.net]
そもそも人が
型とか、型クラスとか、
パブリック/プライベートとか
ポインタだとか
そういう言語側の都合を意識しちゃ
次世代言語として
ダメだと思うんだけどどう?

650 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 20:08:01.73 ID:XD+YRvZx.net]
HaskellやらOCamlやらの型は補助ツールであって言語の都合ではなかろ?



651 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 20:24:36.31 ID:yMB3txhD.net]
え〜、でも、そういうのも
言語側が裏で判断して処理してくれればいいじゃん
A.I.でもディープラーニングでもなんでも使ってさ
ハスケルでもエリクサーでも
古いコンピュータ言語の慣習にとらわれてて
全然、次世代って感じしないじゃん

652 名前:デフォルトの名無しさん mailto:sage [2017/09/22(金) 20:26:22.11 ID:eEMHecr4.net]
型がない言語にろくなものはないな…






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<243KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef