関数型プログラミング言語Haskell Part34 (694レス)
関数型プログラミング言語Haskell Part34 http://mevius.5ch.net/test/read.cgi/tech/1639713446/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
299: デフォルトの名無しさん [sage] 2024/07/05(金) 00:05:27.16 ID:b38yqPqv >>298 computationがvalueの一つだったら 概念的に computation ⊆ value になるけど。 少なくとも拡張しているのだから computation ⊇ value にならないとおかしくない? `5 + 3`がcomputationというのは前提にもよるからなんとも言えないと思う。 計算して8(=5+3)を導いたなら8はcomputationだと思うが。 たとえば、掛け算だったとして、九九を唱えてゴサンジュウゴで15を導き出したんなら計算してないからvalueだと思う。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/299
300: デフォルトの名無しさん [sage] 2024/07/05(金) 00:53:37.68 ID:DkqpNxkH >>299 おかしくないよ OOPでクラスAを継承してクラスBを作った場合(B extends A)を考えてみたら? `九九を唱えてゴサンジュウゴの結果を導き出す`のがcomputation 導き出された結果と導き出す計算を区別して http://mevius.5ch.net/test/read.cgi/tech/1639713446/300
301: デフォルトの名無しさん [sage] 2024/07/05(金) 02:03:56.64 ID:b38yqPqv やっぱりHaskellスレにcomputationネタわかる人いたんだね。 >>300 >OOPでクラスAを継承してクラスBを作った場合(B extends A)を考えてみたら? ここは納得。 >導き出された結果と導き出す計算を区別して なにか f: value -> computation型の関数を念頭に置いて `f ()`はcomputationと言っているのでは? 意図を勘違いしているかもしれないですが、computationはあくまで導き出された結果でしょう。 それと、関数の返り値を導き出す計算をするにあたって出てくる効果を定義に含めようとしているように感じたのですが、 それはあくまで value -> computation型の関数を計算することに付随する性質であって computation概念そのものじゃないと思うのですが。 あくまでcomputation概念自体はそういう関数を計算して得られた計算結果なんじゃないですかね。 そう考えると何か不都合な例とかあります? http://mevius.5ch.net/test/read.cgi/tech/1639713446/301
302: デフォルトの名無しさん [] 2024/07/25(木) 23:56:39.51 ID:zdgCFOr2 stateやioモナドってHaskell以外でも使われてるの? maybeやeitherは関数型でない言語でも同等のものがあるから分かるけど、stateやioはいまいち便利そうな感じがしない http://mevius.5ch.net/test/read.cgi/tech/1639713446/302
303: デフォルトの名無しさん [] 2024/07/26(金) 05:41:42.96 ID:JmafwQnp >>302 それはそうで、IOモナドは他の言語例えばC言語系列だとhoge();の";"部分を数学的に表現しただけだから。 見た目だけなら x = x + 1; printf("%d\n", x); を return (x + 1) >>= \x -> print x do形式に直して x <- return (x + 1) print x ただ、x <- の部分は同名の別の変数をシャドーイングしてるので、厳密にメモリの動作まで合わせるならIORefを使う。 Haskellから見たらメモリもIO処理(ファイル処理含む)も等しく外部への入出力という扱い。 だから、実用としては意味が無い。 一見複数行に見えるコードがその気になれば全部一行に出来るという感動はあるが、それだけだ。 Haskellを仲立ちにして数学とプログラミング言語の関係を研究したりには便利。 逆に自力でIOモナドをPythonなどの適当な言語で実装して全てのコードを関数っぽく書ける。 (Pythonだと演算子の自作が出来ないのでf = (>>=)みたいな事になる) Haskellは便利だから使うものじゃない。 美しいから使うものだ。 あ、でも腐っても最新版は実行速度が結構上がってる(C#/Java並み)ので、選択肢から外される理由も減ってきた気がする。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/303
304: デフォルトの名無しさん [] 2024/07/26(金) 05:47:41.29 ID:JmafwQnp そこまで気づくと、Gtk2hsとかWin32とかのC/C++からのラッパーライブラリを関数型言語っぽくない!って拒否する気持ちが分からなくなる。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/304
305: デフォルトの名無しさん [] 2024/07/26(金) 06:16:02.54 ID:JmafwQnp あ、IOモナドの利点一応あった。 入力関数が他の関数の引数になったり、他の関数に関数合成出来ない。 Pythonのprint(input())みたいなコードや、len(input())みたいなコードは無理。 ここをしっかり分けることで、そういう変な使い方でのエラーは出ない。 もっと広い視点で言えば、入出力がIOモナドという型で分かれているのでネストの深いループの中でも入出力時に型を意識する必要があるので、そういうバグが大分減る。 手続き型関数型関係なく、ネストの深いループの中のデータが今どんな状態かを頭の中で把握出来る人はそう多くない。 だから、デバッグ時に解きほぐしていくんだが、関数型の方が切り分けしやすいかも? http://mevius.5ch.net/test/read.cgi/tech/1639713446/305
306: デフォルトの名無しさん [sage] 2024/07/26(金) 06:20:50.81 ID:EERDttnJ Halkellのその先が見たい? Rustにその答えが全て詰まっている http://mevius.5ch.net/test/read.cgi/tech/1639713446/306
307: デフォルトの名無しさん [] 2024/07/26(金) 08:11:21.54 ID:3P5OnSpM どなたか教えてください。 数学の構成や命題の証明に使うならば、HaskellとOCamlはどちらがよいでしょうか。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/307
308: デフォルトの名無しさん [sage] 2024/07/26(金) 12:15:47.14 ID:f34zQmtT Rustは、メモリが見えすぎるのがイヤだー 大したもの書かないから、GCありでお願いしたい http://mevius.5ch.net/test/read.cgi/tech/1639713446/308
309: デフォルトの名無しさん [sage] 2024/07/26(金) 17:24:09.33 ID:HoH4md/R >>307 漠然としすぎ やり直し http://mevius.5ch.net/test/read.cgi/tech/1639713446/309
310: デフォルトの名無しさん [sage] 2024/07/26(金) 17:58:43.47 ID:dth0vnjc 数学の構成? http://mevius.5ch.net/test/read.cgi/tech/1639713446/310
311: デフォルトの名無しさん [] 2024/07/27(土) 00:29:15.86 ID:r3Qeb3es >>307 Coqという証明支援プログラミング言語をお使い下さい。 Haskellでも型プログラミングでゴリゴリ自力で命題の証明出来るそうですが、ある程度自動化されている専用言語の方が良いでしょう。 Coqはその中でも日本語情報が多いです。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/311
312: デフォルトの名無しさん [] 2024/07/27(土) 00:43:27.29 ID:r3Qeb3es >>306 実用言語、特に組み込み分野を置き換えるのに期待されてる。 特集記事が無くてもお題スレ見たいな、Rustで問題を解こう的な連載が続いてる辺り、 特にinterfaceの編集陣の熱量は感じる。 Haskellも先駆者の記事によればWeb向けとしては神言語だそうだ。 ただ、周辺環境が未整備なだけで。 (なので、自分で全部作るという茨の道を進む「覚悟」が必要だとか) 未だにそうではないことを祈るが…。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/312
313: デフォルトの名無しさん [] 2024/07/27(土) 00:53:19.48 ID:r3Qeb3es >>307 数の構成の方は、代数的型と基本的な方だと(一部)derivingで自動生成してもらえるから、Haskellはとても楽。 print関数で表示する部分だけでも自動生成してもらう価値はある。 (Read,Enum,Ordで生成されるのは確認済み) data Nat = Zero | Succ Nat deriving (Show) 連続関数はPCそのものの限界で無理。 代数的型でメモリの続く限りの範囲なら少数も作れるかもしれない。 (その前にリストなり何なりで10進数位取り記法を導入しないと、Natは無限進数なので小数点第1位が1万とか、無限に桁上がりしない構造になる) http://mevius.5ch.net/test/read.cgi/tech/1639713446/313
314: デフォルトの名無しさん [sage] 2024/07/27(土) 13:46:44.73 ID:f/jP9uGd >>307 結局こいつがなんの返信もしてない時点で適当に書き込んでたってことがわかるよ 真面目に相手をしないほうがいい http://mevius.5ch.net/test/read.cgi/tech/1639713446/314
315: デフォルトの名無しさん [] 2024/07/27(土) 16:19:23.58 ID:Z663WedI >>313 ありがとうございます。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/315
316: デフォルトの名無しさん [sage] 2024/07/27(土) 17:29:46.87 ID:sW1zoNGb >>311-313と>>314は同一人物だよ 騙されないで http://mevius.5ch.net/test/read.cgi/tech/1639713446/316
317: デフォルトの名無しさん [sage] 2024/07/27(土) 21:26:10.11 ID:wvv58UYW 知ってた http://mevius.5ch.net/test/read.cgi/tech/1639713446/317
318: デフォルトの名無しさん [] 2024/07/27(土) 23:34:35.07 ID:r3Qeb3es >>316 他人を語ったつもりもないけどね?(ID見れば分かるんだし) ちなみに>303-305も私だ。 1日2-3回くらいしか見に来ないから、書き込めることはまとめて書き込んだ結果です。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/318
319: デフォルトの名無しさん [sage] 2024/08/01(木) 12:24:32.72 ID:XzWUPxYY プロセッサメーカはAIブームと見るやこぞってAI処理特化プロセッサの開発競争 関数型言語に特徴的な処理に特化したプロセッサは誰も作ってくれない http://mevius.5ch.net/test/read.cgi/tech/1639713446/319
320: デフォルトの名無しさん [sage] 2024/08/01(木) 16:36:21.75 ID:rWBa8MOA それ必要か? http://mevius.5ch.net/test/read.cgi/tech/1639713446/320
321: デフォルトの名無しさん [] 2024/08/04(日) 23:21:47.06 ID:y1wQ9MUm >>319 スタックコンピューターは、Lispの時にぽしゃった。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/321
322: デフォルトの名無しさん [sage] 2024/08/05(月) 21:33:27.17 ID:FcOscapW 日本企業がLisp専用マシン作ったが第五世代コンピュータプロジェクトが💩で何らまともな成果をあげられなかったからね。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/322
323: デフォルトの名無しさん [] 2024/08/11(日) 17:42:41.08 ID:7wNJGHOt 麓から山頂を目指す foldl: 徒歩で登り切ったら滑り台で向こう側へ降りてゴンドラで再び山頂へ戻りゴール foldr: ゴンドラでいきなり山頂へ。そこから向こうの麓まで滑り台で降り、そこから山頂へ徒歩で戻る。但しある場合は滑り台を途中で降りてそこから山頂へ徒歩で戻ってゴールにしてもよい こういうこと? http://mevius.5ch.net/test/read.cgi/tech/1639713446/323
324: デフォルトの名無しさん [] 2024/08/12(月) 21:44:35.95 ID:EAbaqMlq Preludeのライブラリドキュメントのページが最新のChromeでよく応答なしになるんですが! 現代PCでもプチフリを起こすページとか凄いですね!(怒) http://mevius.5ch.net/test/read.cgi/tech/1639713446/324
325: デフォルトの名無しさん [] 2024/08/13(火) 01:44:03.00 ID:3Ko8/FbA >>324 hoogle使いんさい。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/325
326: デフォルトの名無しさん [] 2024/08/13(火) 01:45:16.10 ID:3Ko8/FbA >>323 foldl = 末尾再帰を高階関数化 foldr = 普通の再帰を高階関数化 http://mevius.5ch.net/test/read.cgi/tech/1639713446/326
327: デフォルトの名無しさん [sage] 2024/08/15(木) 10:15:40.11 ID:oieuoNWz yesod を導入しようとして調べているのですが、今は stack 前提で cabal での利用は考えられていないのでしょうか? 導入記事では cabal の記述がありますが、 yesod init すると stack new 使えと表示が出ます。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/327
328: デフォルトの名無しさん [sage] 2024/08/15(木) 10:30:38.08 ID:oieuoNWz yesod-bin 1.6.2.3 です http://mevius.5ch.net/test/read.cgi/tech/1639713446/328
329: デフォルトの名無しさん [sage] 2024/08/19(月) 21:35:37.73 ID:CkMOJkdv rambda.jsのfold相当の関数を教えてください http://mevius.5ch.net/test/read.cgi/tech/1639713446/329
330: デフォルトの名無しさん [sage] 2024/08/24(土) 05:56:24.20 ID:WHJg2+SV 今ってghcupの時代じゃないの? 久しぶりにHaskell書こうと戻ってきた浦島太郎がstackを最新にしようと思ったら ghcupとか紹介されてミーハーだから飛びついたわ http://mevius.5ch.net/test/read.cgi/tech/1639713446/330
331: デフォルトの名無しさん [sage] 2024/08/24(土) 07:38:35.09 ID:E4GXjFrz Gカップ、ハアーハアー http://mevius.5ch.net/test/read.cgi/tech/1639713446/331
332: デフォルトの名無しさん [sage] 2024/08/28(水) 21:41:00.96 ID:HNkudrYA Youtubeでしばらくの間丁寧にHaskellを解説していた人が ある日「やってらんね、俺はもうHaskellでプログラミングしない」と宣言してHaskellから離れたのを見て 所詮その程度の言語なんだなとガッカリした http://mevius.5ch.net/test/read.cgi/tech/1639713446/332
333: デフォルトの名無しさん [sage] 2024/08/28(水) 23:56:40.97 ID:FNkSebMV >>332 Haskellはモナドの実証言語という側面が強いから、モナドは結局よくわからないものという結論に達した今では話題もないし、Haskellで視聴回数稼げないんじゃない。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/333
334: デフォルトの名無しさん [] 2024/08/29(木) 12:50:10.24 ID:D5XAFbVY 自作ライブラリの(+)とPrelude.+が被って、Prelude.+使いたい時一々修飾するの面倒くさいしコードも汚くなります 被った時はデフォルトでPrelude.+を使うよって指定することはできないのですか? http://mevius.5ch.net/test/read.cgi/tech/1639713446/334
335: デフォルトの名無しさん [sage] 2024/08/29(木) 12:53:31.30 ID:1jszJs3n >>332 +1 http://mevius.5ch.net/test/read.cgi/tech/1639713446/335
336: デフォルトの名無しさん [sage] 2024/08/29(木) 12:54:42.14 ID:1jszJs3n >>334 自作の方を修飾 http://mevius.5ch.net/test/read.cgi/tech/1639713446/336
337: デフォルトの名無しさん [] 2024/08/29(木) 14:06:11.00 ID:gtm/5H5m >>334 両方使う予定があるのに、何故わざわざ同じ記号にしたのか…。 自分は自作の方を(.+)とか、微妙に変えてる。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/337
338: デフォルトの名無しさん [] 2024/08/29(木) 14:06:50.30 ID:gtm/5H5m 使用例: 1 .+ 1 >2 http://mevius.5ch.net/test/read.cgi/tech/1639713446/338
339: デフォルトの名無しさん [sage] 2024/08/29(木) 16:27:15.59 ID:Nq0HdWD9 やだやだ!修飾したくない! どっちの+か特定して自動的に選択してよう! http://mevius.5ch.net/test/read.cgi/tech/1639713446/339
340: デフォルトの名無しさん [sage] 2024/08/29(木) 16:57:49.70 ID:YXIyrRhD 何の自作型だか知らんがSemigroup実装して(<>)にでもすれば http://mevius.5ch.net/test/read.cgi/tech/1639713446/340
341: デフォルトの名無しさん [sage] 2024/08/29(木) 17:40:12.63 ID:aIGVGYPU 就職しろよ http://mevius.5ch.net/test/read.cgi/tech/1639713446/341
342: デフォルトの名無しさん [] 2024/08/29(木) 20:48:46.38 ID:gtm/5H5m >>339 独自の(+)を自動で使い分けてもらうにはNum型クラスのインスタンスにする必要があるけど、それでも見分けるには型が違わないといけない。 独自の(+)は、独自の型を受け取りますか? そうじゃないとPreludeの(+)と判別する術がないけど。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/342
343: デフォルトの名無しさん [] 2024/08/29(木) 20:51:12.20 ID:gtm/5H5m あ、できれば型宣言を見せて貰えるとアドバイスしやすい。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/343
344: デフォルトの名無しさん [] 2024/08/31(土) 21:17:53.38 ID:XbdVGeAf ワカランドとして .+. と .-. と .*. を定義することにしました。しかし本質的に解決するにはNumクラスのインスタンス宣言するらしいですね。 しかし独自型同士の+と-、Rationalとの*、Rationalとの/はできますが、 独自型同士の*、独自型同士の/は定義不可能です。 従ってNumクラスになることはできませんでした。 結局どうしていいか判らんどからのワカランドで落ち着きました。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/344
345: デフォルトの名無しさん [] 2024/09/03(火) 18:48:39.95 ID:yXFMfbtr もしかしてData.Mapって遅い? 一日中検索かけてるような処理なら、もうMapを卒業するべきときか・・・ http://mevius.5ch.net/test/read.cgi/tech/1639713446/345
346: デフォルトの名無しさん [] 2024/09/04(水) 00:16:15.77 ID:r/FGXedG Data.Mapというより、リストが遅い。 とりあえずコンパイルの際にghc -O2とかghc -O3とかの最適化掛けてみる。 それでもなお速さを求めるなら、ByteStringとか使うと良い。 もしくは、正格評価版HaskellことIdris 2やRustに乗り換える。 (Idris1と2で互換性が無いらしく、別言語扱いされてる) Haskellで速さを求めるとバッドノウハウが増えて本末転倒になる。 (そこまで苦労するなら素直に速い言語覚えた方が楽。それでも9.10.1はC#並みにはなった?かな?) http://mevius.5ch.net/test/read.cgi/tech/1639713446/346
347: デフォルトの名無しさん [] 2024/09/04(水) 15:29:34.52 ID:ZA+d8/X/ リストが遅い、しかし多くのデータ構造の構築はリストから(fromList)。 つまりコンストラクション回数をいかに減らすか、一度コンストラクトした物を使いまわすか、ということですか http://mevius.5ch.net/test/read.cgi/tech/1639713446/347
348: デフォルトの名無しさん [sage] 2024/09/04(水) 16:12:14.21 ID:LSV34QaC lisp系言語はリストの操作が速いのに… http://mevius.5ch.net/test/read.cgi/tech/1639713446/348
349: デフォルトの名無しさん [] 2024/09/04(水) 22:00:37.92 ID:r/FGXedG >>347 そういう事。 そして、そういう事を考えさせる時点でどうなの?ってのもある。 文法好きだし、普段使いで困らないけど、速さ求めるなら他の言語使うよねって。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/349
350: デフォルトの名無しさん [] 2024/09/04(水) 22:22:04.95 ID:r/FGXedG >>348 遅延評価だからってのも地味に大きい。 自分はプログラミング言語「数学」の(未完全な)実装として見てるので、遅延評価じゃないと困るが。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/350
351: デフォルトの名無しさん [sage] 2024/09/05(木) 00:27:39.10 ID:mpd8c2G1 普段使いって何してんの エロ画像収集とか? http://mevius.5ch.net/test/read.cgi/tech/1639713446/351
352: デフォルトの名無しさん [] 2024/09/05(木) 04:50:37.33 ID:l0HQxOqp PythonやPerlの代わりにテキスト処理に使ってる。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/352
353: デフォルトの名無しさん [sage] 2024/09/05(木) 18:56:54.85 ID:k3Tfomjz >>351 それ面白いと思って書き込んでんの? http://mevius.5ch.net/test/read.cgi/tech/1639713446/353
354: デフォルトの名無しさん [sage] 2024/09/06(金) 09:50:34.80 ID:zzPaKLb6 ブラウザでリンク画像が http://host/hoge.php?hage=fuga.jpg みたいになってて最終的に jpg が表示されてるんだけど http://host/hoge.php?hage=fuga.jpg をブラウザで開いても jpg じゃなくて jpg ファイルのイメージがテキストファイルみたく表示される こういうのは hoge.php の造りが悪い(たぶんhttpヘッダーが可笑しい)んだろうけど じゃあなんで元頁では画像が表示されてたのかとか疑問は残る それはともかく欲しいのは jpg ファイルなので ブラウザに頼らずダウンローダーを描いた http://mevius.5ch.net/test/read.cgi/tech/1639713446/354
355: デフォルトの名無しさん [] 2024/09/06(金) 09:52:13.17 ID:zzPaKLb6 補足 修正前: jpg ファイルのイメージ 正: jpg ファイルのバイナリデータ http://mevius.5ch.net/test/read.cgi/tech/1639713446/355
356: デフォルトの名無しさん [] 2024/09/07(土) 19:33:25.03 ID:9PXNQc4Q 長大な処理となる関数を実行途中にRAM使用量が嵩んでいくとします 中には解放できる部分もある場合について、 このままガベコレせずに進んでいったらいずれOSが『君にはもうRAM貸せないよ』と言ってくるでしょうが、ランタイムシステムは ?その時になってようやく解放できる場所がないか探し出す ?-i 今必要な最低限の確保ができたら即そこに記録して終わり ?-ii 強制的にminorGCを発動して、即そこに記録して終わり ?-iii 強制的にMajorGCを発動して、即そこに記録して終わり ?-iv 強制的にBlockingMajorGCを発動して、即そこに記録して終わり ?-v もはや解放できる場所は見つからないと判断したら例外終了 ?何もせず例外終了する ?その他 どれですか? http://mevius.5ch.net/test/read.cgi/tech/1639713446/356
357: デフォルトの名無しさん [] 2024/09/07(土) 19:35:13.52 ID:9PXNQc4Q 文字化けしちゃいました。文字化けした?は1、2,3だと思ってください http://mevius.5ch.net/test/read.cgi/tech/1639713446/357
358: デフォルトの名無しさん [] 2024/09/08(日) 00:17:59.58 ID:m7MeNrY2 loop s なんちゃらかんちゃら = do let final_score = long_thunk_score + s s' = sをなんちゃらかんちゃら modify' $ Data.Map.Strict.insert key final_score unsafePerformIO ( evaluate $ rnf final_score ) `seq` loop s' なんちゃらかんちゃら このStateモナドは、final_scoreは状態Mapへ挿入される時はWHNFでしょうが、直後の行で完全に評価されています この事はマップに挿入されたfinal_scoreへ影響を与えますか? つまりマップへ挿入済みのサンクとしての値を後からUnsafePerformIOとevaluateとrnfを組み合わせて狙ったタイミングでRNF化できますか? http://mevius.5ch.net/test/read.cgi/tech/1639713446/358
359: デフォルトの名無しさん [sage] 2024/09/09(月) 11:45:42.71 ID:CQiqzRbc >>356 黙って動いてるフリをする http://mevius.5ch.net/test/read.cgi/tech/1639713446/359
360: デフォルトの名無しさん [sage] 2024/09/26(木) 23:16:42.97 ID:eAiUCVhs この言語まだ息してるのか? http://mevius.5ch.net/test/read.cgi/tech/1639713446/360
361: デフォルトの名無しさん [sage] 2024/09/27(金) 00:41:23.43 ID:ppX7mFe8 おまいらは圏論はちゃんとマスターしたか? 最近圏論のお勉強流行ってないみたいだが http://mevius.5ch.net/test/read.cgi/tech/1639713446/361
362: デフォルトの名無しさん [sage] 2024/09/28(土) 08:56:06.97 ID:boijaUwp そもそもHaskellに圏論必要ないよ http://mevius.5ch.net/test/read.cgi/tech/1639713446/362
363: デフォルトの名無しさん [sage] 2024/09/28(土) 11:20:55.86 ID:szplrxFB 背景の理論を理解してないとbrainf*ckと同列のクソパズル言語にしか見えない http://mevius.5ch.net/test/read.cgi/tech/1639713446/363
364: デフォルトの名無しさん [sage] 2024/09/28(土) 11:30:45.96 ID:D4fCa7Ze 米田の何ちゃらの辺りで心が折れて終了 http://mevius.5ch.net/test/read.cgi/tech/1639713446/364
365: デフォルトの名無しさん [sage] 2024/09/28(土) 11:48:20.49 ID:M6f6jLKS >>363 > brainf*ckと同列のクソパズル言語 話がそれるけどbrainf*ckがパズル言語なのは100%その通りだよ しかし構文パーサー、インタープリターやトランスレーター、JITエンジンの実践入門として 丁度良いからこれだけ根強い人気なんだぜ http://mevius.5ch.net/test/read.cgi/tech/1639713446/365
366: デフォルトの名無しさん [] 2024/09/28(土) 20:40:40.54 ID:SDDTPU1M >>361 流行ってないのか…。 個人的にはHaskellよりも圏論の方に関心が移ってるのに…。 んでも、圏論はHaskellでなくても、全てのプログラミング言語の裏側でも動いてるし、それこそ算数の裏側でも動いてる。 モナドが表に出てきてるからHaskellには圏論が必要って思うかもだけど、モナドって言わないで do形式だけ教えて知れっとしてても良いし、「こういう動きの演算子」としてモナドを紹介するだけでも良い。 受験数学とちゃんと向き合う数学みたいなものだけど、変にモナドを理解しようとすると深みにはまる。 (それはそれで楽しいけど、楽しめる人だけだよね…) http://mevius.5ch.net/test/read.cgi/tech/1639713446/366
367: デフォルトの名無しさん [sage] 2024/09/29(日) 07:33:19.55 ID:bBvJfaeS ラムダと束縛変数をマスターしなければdo記法もマスターできないのを すっかり忘れるぐらいポイントフリーが普及してるでしょ http://mevius.5ch.net/test/read.cgi/tech/1639713446/367
368: デフォルトの名無しさん [sage] 2024/09/29(日) 08:45:10.72 ID:3/NLN/+f コーダーが数学の学習に使える時間なんて限られている 時間や基礎知識が足らないので、難解な数学を攻略するのはほぼ不可能 大学生時CSや数学の講義で身に付けておくしかない http://mevius.5ch.net/test/read.cgi/tech/1639713446/368
369: デフォルトの名無しさん [sage] 2024/09/29(日) 09:32:49.44 ID:twIz68VA 難解な数学を攻略できるなら 日本ではコーダーにはならないよな http://mevius.5ch.net/test/read.cgi/tech/1639713446/369
370: デフォルトの名無しさん [sage] 2024/09/29(日) 10:15:01.09 ID:AteoOTMZ 業界入るのに難解数学不要 プログラミングにも不要 数学分からんのでgoogle入るのは無理だけど http://mevius.5ch.net/test/read.cgi/tech/1639713446/370
371: デフォルトの名無しさん [sage] 2024/09/29(日) 11:01:25.51 ID:bBvJfaeS 人工的なルールに依存するのがクソパズルだが 自然界でなおかつ野生のマウンティング的なルールにも依存しないことが数学の目的のひとつだね http://mevius.5ch.net/test/read.cgi/tech/1639713446/371
372: デフォルトの名無しさん [sage] 2024/09/29(日) 20:36:16.00 ID:JU2vTa1F 圏論が全てのプログラミング言語の裏で動いてるとか適当なこと書くなよ http://mevius.5ch.net/test/read.cgi/tech/1639713446/372
373: デフォルトの名無しさん [] 2024/09/30(月) 00:30:17.34 ID:Kh4w53R0 >>368 高卒の自分でも理解できるんだから、難しいわけではないんだけど。 何度も出てる通り、必ずしもモナドを理解する必要はないし。 そもそも自分がプログラマーの頃だって、12-13時間働いた後も新しいプログラミング言語や数学勉強してたぞ。 (新しい仕事のために学びたくない言語に時間使う事も) 高卒が圏論みたいな大学数学学ぶには専門用語がそもそも分らんから、用語が分かるまで遡った。 (アーベル圏のアーベルが分からないレベルからのスタート) 自分に投資できないと淘汰されるぞ。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/373
374: デフォルトの名無しさん [] 2024/09/30(月) 00:59:39.85 ID:Kh4w53R0 >>372 適当じゃない。 モナドは(主に)逐次処理に現れる構造なので、Haskellのような遅延評価で逐次処理自体を作らないといけない(逐次処理をエミュレートするためのモナド)言語でない限り、意識することすらない。 (だからC言語で言う i = 0; の「;」とか言われる) http://mevius.5ch.net/test/read.cgi/tech/1639713446/374
375: デフォルトの名無しさん [sage] 2024/09/30(月) 03:08:44.15 ID:g+sPZSfB >>372 沈黙させる努力をするよりも(全ての)人の話を聞くのをサボる方が良い 努力は時間がかかる 一瞬で報われるものは努力ではない http://mevius.5ch.net/test/read.cgi/tech/1639713446/375
376: デフォルトの名無しさん [sage] 2024/09/30(月) 12:40:29.07 ID:+8KmLjt4 圏論の極々一部のモナドを主語をデカくして圏論ガーとか言ってる人は何も分かってないんだなと思うけどね 俺みたいに数学かじってた人からすると 圏論を勉強すると「あ、この概念はこの分野のこれのことか」ってわかるけど そうじゃない人は何のことを言ってるのかわからんと思う 専門家でも自分の担当外の圏なんて知らないのに 圏論という括りで語ろうとする人はそういうのすら理解してない http://mevius.5ch.net/test/read.cgi/tech/1639713446/376
377: デフォルトの名無しさん [sage] 2024/09/30(月) 13:52:28.73 ID:CD9F70e/ やっと普通の人が出てきて安心した http://mevius.5ch.net/test/read.cgi/tech/1639713446/377
378: デフォルトの名無しさん [sage] 2024/09/30(月) 13:59:18.70 ID:pkON+G7q >>376 数学者向けの圏論の教科書の応用、具体例は全て数学。 数学知らない人が読んでも分かるわけがない。 応用、具体例、演習をCSの分野から採った教科書が望まれるが、書くのが難しい上に面白くするのも困難。 大体CSすらちゃんと修めてないエンジニアはやはり読めない。 CS自体ベースに位相、代数、グラフ理論と数学使うし。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/378
379: デフォルトの名無しさん [sage] 2024/09/30(月) 14:09:03.81 ID:rwCIuc1C 趣味でやる人に良くいるんだよね。 応用各分野に囚われずに、圏論そのものを学習したい、一般圏論を研究したいって人。 これは数学で言うと、集合論と同じく数学基礎論の分野。 http://mevius.5ch.net/test/read.cgi/tech/1639713446/379
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 315 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.013s