スレタイ以外の言語もok
前スレ
次世代言語11[Rust Swift TypeScript Dart]
https://mevius.5ch.net/test/read.cgi/tech/1528037607/
次世代言語12 Go Rust Swift Kotlin TypeScript
■ このスレッドは過去ログ倉庫に格納されています
2018/07/04(水) 09:38:15.76ID:qg2ggPtj
574デフォルトの名無しさん
2018/08/02(木) 06:58:50.64ID:NbZtWKau 関数合成大好きな関数型バカがメソッドチェーン腐すの、マジ笑えるww
575デフォルトの名無しさん
2018/08/02(木) 08:25:49.67ID:j9EqWGQJ >>573
こればっかりはなぁ。後発の言語は、副作用有無が明示されるようになってほしい。命名規則とか人間が頑張るタイプはやめて
こればっかりはなぁ。後発の言語は、副作用有無が明示されるようになってほしい。命名規則とか人間が頑張るタイプはやめて
576デフォルトの名無しさん
2018/08/02(木) 09:00:45.23ID:St12vf3Y やはりRustだな
577デフォルトの名無しさん
2018/08/02(木) 09:09:27.15ID:eWP0KV4o webサービス作るとき。というかrdbとの連携って静的言語より動的言語のほうが向いてる気がするんだけど、そんなことはない?
578デフォルトの名無しさん
2018/08/02(木) 13:33:10.21ID:2LzP698W そんなことなかっぺ
579デフォルトの名無しさん
2018/08/02(木) 21:52:10.29ID:yHWyeNWP TypeScriptは事実上死んだだろ
580デフォルトの名無しさん
2018/08/02(木) 21:54:23.55ID:RP1FF5pC581デフォルトの名無しさん
2018/08/02(木) 21:55:36.74ID:0KRWeg2T >>579
新しいのが出たんだが
新しいのが出たんだが
582デフォルトの名無しさん
2018/08/02(木) 22:57:15.05ID:U+SwOe4H typescriptなしにjavascriptを書こうとは思わないからな
583デフォルトの名無しさん
2018/08/02(木) 23:26:38.99ID:xmgsCqay 頑なに副作用嫌ってる人意味分からん
java.awt.Graphics2Dとかにあるような
コンテクストオブジェクトをイジイジするのってめちゃ便利やんけ
java.awt.Graphics2Dとかにあるような
コンテクストオブジェクトをイジイジするのってめちゃ便利やんけ
584デフォルトの名無しさん
2018/08/02(木) 23:45:39.47ID:Ihv2w8Qg >>575
バカは引数のconst外してでも副作用入れてくるから言語で規制するって発想自体が無駄。
バカは引数のconst外してでも副作用入れてくるから言語で規制するって発想自体が無駄。
585デフォルトの名無しさん
2018/08/02(木) 23:58:42.08ID:2ToUeHg/ 1行に書かなきゃどんどん一時変数を増やさなきゃならない関数パイプラインはそれなりに意義が
あると思うけど、そうじゃないメソッドチェインはわざわざ見にくい1行の式にしなくても、と思う。
あると思うけど、そうじゃないメソッドチェインはわざわざ見にくい1行の式にしなくても、と思う。
586デフォルトの名無しさん
2018/08/03(金) 01:33:05.65ID:xgfpZ/vV とはいえtypescriptは型情報が嘘つくことあるのがしんどい。ないよりはマシなんだけど。
いまいち信用できない。
jsに、標準で型情報ついてくれないかなー。
いまいち信用できない。
jsに、標準で型情報ついてくれないかなー。
587デフォルトの名無しさん
2018/08/03(金) 04:43:38.64ID:K19AvQuK ESの付け焼き刃的実装に限界があるでしょ
588デフォルトの名無しさん
2018/08/03(金) 06:06:54.20ID:2wLWPbYE 嘘つき「何も宣言しないよりはマシ」
付け焼刃「何もしないよりはマシ」
ギャンブル依存症「何も賭けないよりはマシ」
付け焼刃「何もしないよりはマシ」
ギャンブル依存症「何も賭けないよりはマシ」
589デフォルトの名無しさん
2018/08/03(金) 10:32:16.64ID:bzinJLAw 所詮MSの作った詐欺言語だわな
590デフォルトの名無しさん
2018/08/03(金) 10:34:43.31ID:bzinJLAw >>390
の徹底を求めます
の徹底を求めます
591デフォルトの名無しさん
2018/08/03(金) 10:46:59.25ID:Nsq6cZsy TypeScriptはもうデファクトスタンダードなのよね
592デフォルトの名無しさん
2018/08/03(金) 11:49:14.47ID:5Gvag+uQ >>590
病的になんだか拗らせてるのかな
病的になんだか拗らせてるのかな
593デフォルトの名無しさん
2018/08/03(金) 14:13:45.54ID:2wLWPbYE なぜ病気とか健康とかなんですか
悪とか正義とかではだめなんですか
悪とか正義とかではだめなんですか
594デフォルトの名無しさん
2018/08/03(金) 14:37:25.10ID:284JcKyJ Linus氏曰く「マイクロソフト嫌悪は『病気』」
https://srad.jp/story/09/07/28/0326208/
https://srad.jp/story/09/07/28/0326208/
595デフォルトの名無しさん
2018/08/03(金) 15:01:39.29ID:2wLWPbYE 病人は生産性がないなんて言ったらたぶん炎上するし
悪人は生産性がないと言う方が無難だと思うけどなあ
悪人は生産性がないと言う方が無難だと思うけどなあ
596デフォルトの名無しさん
2018/08/03(金) 21:26:18.77ID:2vUMzRdm 生産性がないならまだいいが生産性がマイナスな輩というのがいる。
こういう輩を見るとベイシックインカムはいいんじゃないかと本気で思うよ。
こういう輩を見るとベイシックインカムはいいんじゃないかと本気で思うよ。
597デフォルトの名無しさん
2018/08/03(金) 22:58:37.04ID:iVE9Y99e >>586
嘘って?
嘘って?
598デフォルトの名無しさん
2018/08/04(土) 10:28:43.19ID:uVhwgvNs やっぱ副作のないメソチェが最高やろ
リス内記は読つら
リス内記は読つら
599デフォルトの名無しさん
2018/08/04(土) 10:30:16.07ID:uVhwgvNs >>597
それは愛だよ
それは愛だよ
600デフォルトの名無しさん
2018/08/04(土) 10:58:41.10ID:RjyiLlMo 初心者用の言語は上級者の要求を満たすことが出来ないということだな。
上級者が初心者用の言語使うのが間違ってるな。
haskellを使えば副作用を分離出来るし、メソッドチェーンも出来るし、
直積のタプルも0次元からN次元まで使えるし(1次元は普通の集合)
解決だな。
上級者が初心者用の言語使うのが間違ってるな。
haskellを使えば副作用を分離出来るし、メソッドチェーンも出来るし、
直積のタプルも0次元からN次元まで使えるし(1次元は普通の集合)
解決だな。
601デフォルトの名無しさん
2018/08/04(土) 11:18:31.48ID:uVhwgvNs ハスルケはセパレイタとしての記号が少ないからリイダビリティが悪い
そして誰もいなくなっただろう
そして誰もいなくなっただろう
602デフォルトの名無しさん
2018/08/04(土) 12:29:28.79ID:uqPZ4G5F Haskellはタプルを使わなくてもコンストラクタのアリティを2以上にできる
多変数コンストラクタの具体例のひとつにすぎないのがHaskellのタプル
1変数コンストラクタも無数にある
だから a と (a,) が同じ型にならないPythonを見ても違和感はない
多変数コンストラクタの具体例のひとつにすぎないのがHaskellのタプル
1変数コンストラクタも無数にある
だから a と (a,) が同じ型にならないPythonを見ても違和感はない
603デフォルトの名無しさん
2018/08/04(土) 14:55:00.60ID:PeeX9dIT >>601
オレオレ略語とか変なカタカナ表記とか、お前さんのレスもreadability低いぞ
オレオレ略語とか変なカタカナ表記とか、お前さんのレスもreadability低いぞ
604デフォルトの名無しさん
2018/08/04(土) 16:06:26.17ID:uVhwgvNs >>603
これが通なんだよなあ
これが通なんだよなあ
605デフォルトの名無しさん
2018/08/04(土) 18:12:45.89ID:2981o0py ナウいハスルカー来たな
606デフォルトの名無しさん
2018/08/06(月) 14:41:08.25ID:mInzEOma >>598
だからなんでリスト内包vsメソッドチェーンの対立になってんだよ
だからなんでリスト内包vsメソッドチェーンの対立になってんだよ
607デフォルトの名無しさん
2018/08/06(月) 16:48:04.88ID:F/jngZf9 ハスケルはエコシステムが腐ってるという話を聞いたけど本当?
言語がいくらすごくても環境構築で、しんどい思いするなら用無しなんですが
言語がいくらすごくても環境構築で、しんどい思いするなら用無しなんですが
608デフォルトの名無しさん
2018/08/06(月) 16:59:19.53ID:N1MnEH4U 改善されたことになっているが正直クソ
609デフォルトの名無しさん
2018/08/06(月) 17:02:40.30ID:bv191ZQE 理論ばかりの頭でっかちの奴等ばっかりだからな。
実用性なんかどうでもいいんだろ。
だから実用されないんだよw
実用性なんかどうでもいいんだろ。
だから実用されないんだよw
610デフォルトの名無しさん
2018/08/06(月) 19:32:00.71ID:ykSda89u611デフォルトの名無しさん
2018/08/06(月) 21:10:23.18ID:6BhDg/Vc 1. 関数プログラミング自体が実は大したことない
2. 副作用禁止の強制が邪魔
3. 使ってるプログラマーのレベルが低い(偏屈しか使わない・ユーザー層が薄い)
4. まだ成熟していないだけ
どうだろう。4だと思いたいが…
2. 副作用禁止の強制が邪魔
3. 使ってるプログラマーのレベルが低い(偏屈しか使わない・ユーザー層が薄い)
4. まだ成熟していないだけ
どうだろう。4だと思いたいが…
612デフォルトの名無しさん
2018/08/06(月) 21:20:23.85ID:2AWODdBK ・Web系→モデルやロジックが単純なので関数型のメリットなし
・ゲーム系→常に時間変化を扱うので関数型のメリットなし
・業務系→PGの単価が上がって割に合わないので関数型のメリットなし
・ゲーム系→常に時間変化を扱うので関数型のメリットなし
・業務系→PGの単価が上がって割に合わないので関数型のメリットなし
613デフォルトの名無しさん
2018/08/06(月) 21:28:53.61ID:13KQrLiC 関数型の定義が未だに分からない
2だけならどの言語でも原則として受け入れられているんじゃないの
2だけならどの言語でも原則として受け入れられているんじゃないの
614デフォルトの名無しさん
2018/08/06(月) 21:45:44.03ID:2AWODdBK 関数型はテストするまでもなく結果の明らかな極めて宣言性の高いコーディングができるというのが実用上最大の強みなわけだけど、
関数型マニアの関心は主に無限リストやら再帰やらモナドやら、自らその宣言性を捨てるテクニックにばかり向いていて、
結局関数型の何が嬉しいのかよくわからん状態になってしまってるのが現状
関数型マニアの関心は主に無限リストやら再帰やらモナドやら、自らその宣言性を捨てるテクニックにばかり向いていて、
結局関数型の何が嬉しいのかよくわからん状態になってしまってるのが現状
615デフォルトの名無しさん
2018/08/06(月) 21:58:21.43ID:13KQrLiC 具体的にはどんなコードになるの?
そんな単純なコードの断片だけを組み合わせるだけで実用に耐えうる可読性や性能を発揮できるもんなの?
そんな単純なコードの断片だけを組み合わせるだけで実用に耐えうる可読性や性能を発揮できるもんなの?
616デフォルトの名無しさん
2018/08/06(月) 21:59:00.02ID:iAZi0X5l 関数単位、メソッド単位でなるべく純粋にしておくのは重要
短い関数内部の実装まで純粋にしようとするのは宗教
短い関数内部の実装まで純粋にしようとするのは宗教
617デフォルトの名無しさん
2018/08/06(月) 22:15:10.24ID:GZIQzwJh 平気で数百メガあるようなデータに対して副作用のないメソッドチェーンで加工するのって普通にやることなの?
618デフォルトの名無しさん
2018/08/06(月) 22:27:24.52ID:YK5LkNr+619デフォルトの名無しさん
2018/08/06(月) 23:04:02.54ID:GZIQzwJh じゃあ数メガぐらいのデータなら?
620デフォルトの名無しさん
2018/08/06(月) 23:11:20.61ID:4RMVWTln 遅延評価だったりストリーム使えるんなら大体気にしなくていいんじゃないかね
621デフォルトの名無しさん
2018/08/06(月) 23:47:33.03ID:+WS/BAR+ 関数型言語の本質は関数そのものを柔軟に扱うことだと思うんだけどな
例えばジェネリック関数のある言語ではジェネリック関数をジェネリックなまま引数や戻り値として扱えないと関数型言語っぽくない気がする
例えばジェネリック関数のある言語ではジェネリック関数をジェネリックなまま引数や戻り値として扱えないと関数型言語っぽくない気がする
622デフォルトの名無しさん
2018/08/06(月) 23:57:07.45ID:6BhDg/Vc >>613
副作用はよろしくない、というのは確かに広く受け入れられている。
でもHaskellなどが要求する基準は、もっとずっと高い。
ちょっと前にstackツールのコードを見たことがある。今どうなってるかは知らんが当時は、
ある純粋な関数の中でデバッグ用ログをより詳細に出力するってフラグを、ソースコードに即値でベタ書きしていた。
これは他の言語では例えば環境変数を読み込む関数をその場で実行すれば良いだけなのだが、
Haskellでそれをやろうとすると、関数のシグニチャを非純粋なものに置き換えて、使用する全箇所も合わせて換えるか、
あるいはフラグを引き渡す配管を新設するか、などの工事が必要になる。
副作用はよろしくない、というのは確かに広く受け入れられている。
でもHaskellなどが要求する基準は、もっとずっと高い。
ちょっと前にstackツールのコードを見たことがある。今どうなってるかは知らんが当時は、
ある純粋な関数の中でデバッグ用ログをより詳細に出力するってフラグを、ソースコードに即値でベタ書きしていた。
これは他の言語では例えば環境変数を読み込む関数をその場で実行すれば良いだけなのだが、
Haskellでそれをやろうとすると、関数のシグニチャを非純粋なものに置き換えて、使用する全箇所も合わせて換えるか、
あるいはフラグを引き渡す配管を新設するか、などの工事が必要になる。
623デフォルトの名無しさん
2018/08/07(火) 00:00:17.86ID:Cr+icss0 >>620
それは勘違い
遅延ストリームでステップ毎にコピーしてるんなら、コピーするオブジェクト数はバッチでステップ毎に全件コピーするのと変わらん
というかメモリアクセスが細切れになる分だけ遅くなる
遅延ストリームはレイテンシの低減には有効だけどスループットも下がるよ
それは勘違い
遅延ストリームでステップ毎にコピーしてるんなら、コピーするオブジェクト数はバッチでステップ毎に全件コピーするのと変わらん
というかメモリアクセスが細切れになる分だけ遅くなる
遅延ストリームはレイテンシの低減には有効だけどスループットも下がるよ
624622
2018/08/07(火) 00:12:00.15ID:iXXZIPQ5 ...という工事が必要になる。だから仕方ないと言えなくもない。
このような事態は純粋な言語では良くあるのだが、このことだけで、すわHaskellあかんやん、は早計だと思う。
Implicit ParametersやGivenのようなアイデアも出てきてるし、これは解決する余地のある課題なのかもしれない。
あるいはこのような事態を引き起こす設計に問題があるのかも。
このような事態は純粋な言語では良くあるのだが、このことだけで、すわHaskellあかんやん、は早計だと思う。
Implicit ParametersやGivenのようなアイデアも出てきてるし、これは解決する余地のある課題なのかもしれない。
あるいはこのような事態を引き起こす設計に問題があるのかも。
625デフォルトの名無しさん
2018/08/07(火) 00:18:57.06ID:UMEYDAwp 次世代言語たって、シングルスレッドのJSをこねくり回してドヤってる人と
Native言語でハードウェアの性能を最大限引きだそうとしてる人とで
必要とするもの違うからいっしょに議論してもかみ合わない
Native言語でハードウェアの性能を最大限引きだそうとしてる人とで
必要とするもの違うからいっしょに議論してもかみ合わない
626デフォルトの名無しさん
2018/08/07(火) 00:20:39.37ID:wPKvZYDw そもそもハスケルの仕様通りの評価順序で実装してたらまともな実行速度でないっしょ。
そういうごまかしを含んでる時点でしょーもねーわ。
そういうごまかしを含んでる時点でしょーもねーわ。
627デフォルトの名無しさん
2018/08/07(火) 00:30:11.90ID:Cr+icss0 副作用はよろしくない、といってるくせに再帰やら遅延ストリームやらモナドやら状態依存のコードを好んで書きたがるのが関数型マニア
そもそも状態に依存するコードなんか極力書くな、避けられるならモナドなんか使うな、という正論を言えない空気があり、
競って予測困難で難解なコードを書いて「俺すげえ」のマウント合戦を繰り広げている
こんな状態で流行るわけがない
そもそも状態に依存するコードなんか極力書くな、避けられるならモナドなんか使うな、という正論を言えない空気があり、
競って予測困難で難解なコードを書いて「俺すげえ」のマウント合戦を繰り広げている
こんな状態で流行るわけがない
628デフォルトの名無しさん
2018/08/07(火) 01:14:56.51ID:rAZv+q4y 状態依存は避けられないのに状態を禁止してしまったからやたらと状態関連が発達してしまっているけど、状態なしで書ける部分と状態が必要な部分を分けて書くという理念は守られているはず……
629デフォルトの名無しさん
2018/08/07(火) 01:27:00.12ID:lcDZ2HG8 Haskellの定義を知ってる人ならいるけど関数型の定義は誰も知らないんだよ
だから「Haskellは関数型である」とか
「Haskellマニアと関数型マニアは同一人物である」とかいう根拠がそもそも存在しない
だから「Haskellは関数型である」とか
「Haskellマニアと関数型マニアは同一人物である」とかいう根拠がそもそも存在しない
630デフォルトの名無しさん
2018/08/07(火) 01:37:43.21ID:wdyVMIbP つまりおまいらはまたオブジェクティバラブルなコード時代に戻るというの?
631デフォルトの名無しさん
2018/08/07(火) 01:38:48.13ID:kyOAfGFT 日本語でおk
632デフォルトの名無しさん
2018/08/07(火) 01:39:33.68ID:UMEYDAwp 関数型言語の定義ってラムダ計算を計算モデルにしてる言語でいいだろ
633デフォルトの名無しさん
2018/08/07(火) 02:09:48.40ID:lcDZ2HG8 そのラムダ計算には型があるのかないのか
副作用があるのかないのか
なにも定義されていない
副作用があるのかないのか
なにも定義されていない
634デフォルトの名無しさん
2018/08/07(火) 03:28:30.29ID:hhcOlifT 型なしラムダ計算だったとしてもlispだし型付ラムダ計算だったとしてもML/Haskell/etc…だし広義には問題なくない?
副作用の有無=純粋性は程度で片付けなきゃやってられない(どの汎用言語にもプログラムならどこかしら副作用が存在する)し
定期的に定義に固執しすぎなレス見掛けるけど自分でその問い掛けを考えたか?って感じなのが多い
副作用の有無=純粋性は程度で片付けなきゃやってられない(どの汎用言語にもプログラムならどこかしら副作用が存在する)し
定期的に定義に固執しすぎなレス見掛けるけど自分でその問い掛けを考えたか?って感じなのが多い
635デフォルトの名無しさん
2018/08/07(火) 03:47:47.09ID:1Z28ZkuF 計算機科学の研究課題としては興味深いが
プロダクション用途ではないだろう
だから何が悪いというわけではないが
プロダクション用途ではないだろう
だから何が悪いというわけではないが
636デフォルトの名無しさん
2018/08/07(火) 06:13:33.64ID:o88xwRN/637デフォルトの名無しさん
2018/08/07(火) 07:56:24.18ID:c0zbvnlv Scalaという見通しの悪い言語が関数型として世に知られてしまったのも不幸だったよね
意識高い系のオモチャに選ばれたのがScalaではなくF#だったら状況はだいぶ違っていたのではないか
意識高い系のオモチャに選ばれたのがScalaではなくF#だったら状況はだいぶ違っていたのではないか
638デフォルトの名無しさん
2018/08/07(火) 07:59:10.87ID:6yZcjsMn 状態に依存する部分と純粋な部分を切り分けること自体は純粋関数型言語じゃなくてもできること
そもそもHaskell使える開発者が集まってるならHaskellじゃなくてもみんな極力そのように書くし、
強制されないと副作用ごちゃまぜコードを書くような土方はHaskellは使えない
純粋性を強制するメリットが禁止して柔軟性を失うデメリットに釣り合ってない
そもそもHaskell使える開発者が集まってるならHaskellじゃなくてもみんな極力そのように書くし、
強制されないと副作用ごちゃまぜコードを書くような土方はHaskellは使えない
純粋性を強制するメリットが禁止して柔軟性を失うデメリットに釣り合ってない
639デフォルトの名無しさん
2018/08/07(火) 08:35:30.11ID:iXXZIPQ5 純粋性を強制するメリット、を考えてみた。
例えばエディタの設定ファイルをHaskell自身で書くことができる。
設定ファイルがSafeHaskellであることを要請して、かつ設定操作に限定された型のみを許すようにする。
これで設定ファイルに、勝手にビットコインを採掘するスクリプトを忍ばせるような悪さができなくなるし、
Haskellそのものの柔軟性を活かして好きなだけ設定を短く表現できる。
安全さと強力さが両立された。
例えばエディタの設定ファイルをHaskell自身で書くことができる。
設定ファイルがSafeHaskellであることを要請して、かつ設定操作に限定された型のみを許すようにする。
これで設定ファイルに、勝手にビットコインを採掘するスクリプトを忍ばせるような悪さができなくなるし、
Haskellそのものの柔軟性を活かして好きなだけ設定を短く表現できる。
安全さと強力さが両立された。
640デフォルトの名無しさん
2018/08/07(火) 08:38:42.25ID:FVK8LmPZ Haskellは状態に依存するコードを書こうとすると途端に
可読性の低い冗長なコードになるのがダメなところだと思う
純粋な部分の構文に比べて手抜きすぎなんだよ
可読性の低い冗長なコードになるのがダメなところだと思う
純粋な部分の構文に比べて手抜きすぎなんだよ
641デフォルトの名無しさん
2018/08/07(火) 08:54:53.62ID:UMEYDAwp 手抜きではないだろ、むしろ逆
worldを隠しつつ宣言的に書くという変態技のために
モナド用の構文糖衣が多数あるせいで関数型の簡潔さが失われている
worldを隠しつつ宣言的に書くという変態技のために
モナド用の構文糖衣が多数あるせいで関数型の簡潔さが失われている
642デフォルトの名無しさん
2018/08/07(火) 09:11:21.06ID:FVK8LmPZ シンタックスシュガーを幾ら用意しても簡潔に書けるようにする工夫がないから
どう書いても冗長って話なんだけど?分かってないなぁ
どう書いても冗長って話なんだけど?分かってないなぁ
643デフォルトの名無しさん
2018/08/07(火) 10:46:00.40ID:rAZv+q4y それは手抜きと表現すべきではない。わかってないなあ
644デフォルトの名無しさん
2018/08/07(火) 10:58:16.01ID:hbLPpe/0645デフォルトの名無しさん
2018/08/07(火) 11:45:14.63ID:7ewfkb5/ 工夫するたびに言語の差は大きくなって言葉が通じなくなる
逆に言語を一つにしたければチューリングマシンだとかラムダ計算だとか
人が手を加えないまるで手抜きのような方向に行けばいい
逆に言語を一つにしたければチューリングマシンだとかラムダ計算だとか
人が手を加えないまるで手抜きのような方向に行けばいい
646デフォルトの名無しさん
2018/08/07(火) 11:56:41.38ID:MwJ3Tuus >>644
そうだなぁ。何でもいいんだけど、たとえば in-place quicksort をHaskellで可読性高く書けるかって話ですよ
いままでCにも劣る可読性のコードしか見たことないわ
だから、お前が可読性高い in-place quicksort を書いて見せたらこっちの意見は取り下げてもいいけどね
無理なら別に逃げてもいいよw
そうだなぁ。何でもいいんだけど、たとえば in-place quicksort をHaskellで可読性高く書けるかって話ですよ
いままでCにも劣る可読性のコードしか見たことないわ
だから、お前が可読性高い in-place quicksort を書いて見せたらこっちの意見は取り下げてもいいけどね
無理なら別に逃げてもいいよw
647デフォルトの名無しさん
2018/08/07(火) 11:56:53.80ID:UdLWsfQc 関数型は実行モデルに由来する制約が少なくて言語設計の自由度が高い分、アイランドモンキー族にとって馴染みにくいものになってると思うんだよな
「結論から言え」なカルチャーが色濃く出すぎてる
「結論から言え」なカルチャーが色濃く出すぎてる
648デフォルトの名無しさん
2018/08/07(火) 12:42:49.18ID:hbLPpe/0649デフォルトの名無しさん
2018/08/07(火) 13:44:16.06ID:iXXZIPQ5 可読性が低く冗長なのが問題だ。簡潔に書ける工夫があればよい。
例えばどういう工夫が?
例えば in-place quicksort が問題だ。簡潔に書ける工夫はないだろ?
----
まあ問題意識は判った。確かに可読性と速度の両立は課題だと思う。
例えばどういう工夫が?
例えば in-place quicksort が問題だ。簡潔に書ける工夫はないだろ?
----
まあ問題意識は判った。確かに可読性と速度の両立は課題だと思う。
650デフォルトの名無しさん
2018/08/07(火) 13:56:33.53ID:7ewfkb5/ CとHaskellの両立ができないやつは二刀流を自粛している
これは自粛であって禁止ではない
これは自粛であって禁止ではない
651デフォルトの名無しさん
2018/08/07(火) 14:11:05.26ID:iXXZIPQ5652デフォルトの名無しさん
2018/08/07(火) 14:14:10.11ID:87aOzLJL インプレースに書かなくてもインプレースにしてくれるのが stream fusion
653デフォルトの名無しさん
2018/08/07(火) 14:20:07.94ID:7ewfkb5/ 副作用を書かなくても書ける(副作用禁止とは言っていない)
654デフォルトの名無しさん
2018/08/07(火) 16:25:52.99ID:1g1T9ybM >>633
> そのラムダ計算には型があるのかないのか
> 副作用があるのかないのか
副作用を入れたものは本来はλ計算ではないよ
そういう変てこなバリエーションをデッチ上げて「何ちゃらλ-calculus」とか呼んで発表してるのは幾らでもあるがゴミばかり
状態などというものを考えず単純に構文的な置き換えだけで扱えるλ計算の長所を破壊し放棄する拡張をしても何もメリットはない
単にほとんど誰にも論文のカウント数を1増やすだけ
まあ御当人の学位取得や助教職のアプリケーションには有効なのかも知れないが
> そのラムダ計算には型があるのかないのか
> 副作用があるのかないのか
副作用を入れたものは本来はλ計算ではないよ
そういう変てこなバリエーションをデッチ上げて「何ちゃらλ-calculus」とか呼んで発表してるのは幾らでもあるがゴミばかり
状態などというものを考えず単純に構文的な置き換えだけで扱えるλ計算の長所を破壊し放棄する拡張をしても何もメリットはない
単にほとんど誰にも論文のカウント数を1増やすだけ
まあ御当人の学位取得や助教職のアプリケーションには有効なのかも知れないが
655デフォルトの名無しさん
2018/08/07(火) 16:27:13.31ID:1g1T9ybM656デフォルトの名無しさん
2018/08/07(火) 16:59:37.73ID:7ewfkb5/ モナドクラスは副作用を入れたinstanceと入れないinstanceの見た目を同じにする
副作用を禁止しても見た目が美しくなったりしない
Haskellには副作用を禁止するモチベーションがない
副作用を禁止しても見た目が美しくなったりしない
Haskellには副作用を禁止するモチベーションがない
657デフォルトの名無しさん
2018/08/07(火) 17:10:14.56ID:ghIQqx1y 副作用あったら遅延評価できないじゃんwwwww
658デフォルトの名無しさん
2018/08/07(火) 17:44:51.87ID:STmUhm8q659デフォルトの名無しさん
2018/08/07(火) 21:56:56.28ID:rAZv+q4y Inplaceが必要な時はHaskellを使うべきではない
Inplaceが不要な時に力を発揮する言語だし、Inplaceなんて避けておけというメッセージのこもった言語だ
Inplaceが不要な時に力を発揮する言語だし、Inplaceなんて避けておけというメッセージのこもった言語だ
660デフォルトの名無しさん
2018/08/07(火) 22:38:15.68ID:ThdtCxHP661デフォルトの名無しさん
2018/08/07(火) 23:17:08.03ID:rAZv+q4y >>660
個人的には正直そうした方が良いと思う
個人的には正直そうした方が良いと思う
662デフォルトの名無しさん
2018/08/07(火) 23:57:01.73ID:z8E9h/cA たかがin-placeが必要なだけでCの助けが必要って?
そんなウンコは次世代言語に相応しくないな
そんなウンコは次世代言語に相応しくないな
663デフォルトの名無しさん
2018/08/08(水) 00:39:35.00ID:MPyzl9Mf 結局C++で全部書けばいいじゃんってなる
664デフォルトの名無しさん
2018/08/08(水) 00:41:13.08ID:wOobAAAA >>662
なるべくin-placeは避けろという言語に対してin-placeがかけないなら云々とかもう思想が合ってないとしか言いようがないな
なるべくin-placeは避けろという言語に対してin-placeがかけないなら云々とかもう思想が合ってないとしか言いようがないな
665デフォルトの名無しさん
2018/08/08(水) 00:46:04.90ID:LvbSOyDD Haskellは富豪プログラム専用。in-placeがどうしても必要になるような貧乏人の道具ではない
666デフォルトの名無しさん
2018/08/08(水) 01:04:09.78ID:vRZZuWNv 副作とノー副作を合一合体して書けるScalaサイキョってことか?
667デフォルトの名無しさん
2018/08/08(水) 01:05:18.29ID:vRZZuWNv ちなInplaceって何ンゴ?
668デフォルトの名無しさん
2018/08/08(水) 01:17:44.98ID:XKTLbEez 関数型言語に学ぶ価値はあるけど使う価値はないっ昔から言われてるじゃん
Monad勉強してへーうまくできてんなー(実行効率悪そうだけど)
って思っときゃいいの
そして最近の言語はOptionalとかいいとこだけうまく取り込んでるわけだ
Monad勉強してへーうまくできてんなー(実行効率悪そうだけど)
って思っときゃいいの
そして最近の言語はOptionalとかいいとこだけうまく取り込んでるわけだ
669デフォルトの名無しさん
2018/08/08(水) 01:33:19.58ID:x4iNladl シンプルさと実用性を兼ね備えたF#が最強でいいよ
670デフォルトの名無しさん
2018/08/08(水) 06:39:46.68ID:qzF7QRmg >>669
F#って、何処で使われてるの?
F#って、何処で使われてるの?
671デフォルトの名無しさん
2018/08/08(水) 07:11:01.72ID:NcOXcLna 既存の手続き型言語で培われてきたアルゴリズムは
ミュータブルなデータ構造に対して最大限の効果を発揮するものなんだから
イミュータブルなデータ構造が基本の言語で同じことをやろうとするのが誤り
ミュータブルなデータ構造に対して最大限の効果を発揮するものなんだから
イミュータブルなデータ構造が基本の言語で同じことをやろうとするのが誤り
672デフォルトの名無しさん
2018/08/08(水) 07:27:54.72ID:wNvOXIQi イミュータブルなデータ構造の方が速い、ってケースはあり得るのかしらん
673デフォルトの名無しさん
2018/08/08(水) 08:23:57.11ID:IxvHxUWv ミュータブルがイミュータブルを包含するなら無い。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- NY円、一時1ユーロ=180円台まで下落…1999年のユーロ導入以来初 [蚤の市★]
- 【外交】日中関係悪化、長期化の様相 2012年には自動車輸出80%減も ロイター★3 [1ゲットロボ★]
- 国内ホテル、既にキャンセルも 訪日客関連業界、事態見守る ★3 [蚤の市★]
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」★2 [冬月記者★]
- 「どうしようもない」 ため息つくアジアの玄関口 中国の訪日自粛で−福岡市 [蚤の市★]
- 「稼ぐのよ!」高市総理が電話ガチャ切りで伝えたこと 鈴木憲和農林水産大臣が国政報告会に出席 自身が目指す農政の方針語る [煮卵★]
- 『しんちゃんと岸田さん』 [175344491]
- 日本株、大暴落!!! [252835186]
- 識者「『フリーパレスチナ』とかイキってる連中が台湾の話になると『中国を怒らせるな!』ってなる。ほんと左翼の正義って薄っぺらい」 [279254606]
- 【超悲報】中国への武力行使、世論調査で「賛成」「どちらかといえば賛成」48.8% 「反対」「どちらかといえば反対」の44.2%を上回る [314039747]
- んなっても良いお🏡
- ( ・᷄ὢ・᷅ )お尻出して
