14/03/02 20:20:44.42
論文の紹介だけだったか
まぁそれでも価値はあるから、もうそれでいいよ
ちょっとは期待してたんだが・・・
80:デフォルトの名無しさん
14/03/02 20:43:26.21
教えたところで理解できるという保証がなさそうだね
81:デフォルトの名無しさん
14/03/02 20:53:04.50
上目線で質問するあたり俺たちかっこいい
82:デフォルトの名無しさん
14/03/02 20:55:16.39
「教える」んじゃなくて、「語る」と考えるといいかも
上下関係じゃなくて、対等の関係で議論しあうというのも、たまにはいいと思う
(相手を言い負かそうとか、そういうのは無しで)
83:デフォルトの名無しさん
14/03/02 21:25:56.03
>>82
いいこと言った
84:デフォルトの名無しさん
14/03/02 21:32:08.00
圏論わかる同士で話すときに「モナドってのは箱だ」みたいな話しなくて済むだけでも
俺にとっては十分有用です:応用
たまにモナドの議論をしてるときにモナド則の1,2は満たすけど3は満たさないような例だと
どんな問題が起きるの?みたいな質問を得意げにする人がいるんだけど(皆さんは賢いので
そんなことないでしょうけど)、圏論での意味論(の初歩だが)みたいなのを持ち出せば
そういう筋の悪い質問なんかが湧いてこないだけでも有用かな。
あと、Haskellは表記方法がエレガントすぎてたまに型と値の理解がごっちゃになってるひとがいる。
そういう人への(あるいは自分への)リメディアルの議論のための良いバックグラウンドをあたえてくれるね。
本格的な表示意味論のほうは、帰納型が定義できるような圏をどうやって構成するかとかの話が中心だという
気がします。
Moggiがらみで一言付け加えれば、彼の論文にはラムダ計算のような「純粋な計算」を材料にして
「状態付きの計算」だとか「継続」のようなものをどうやって構築するかという話が整理されていて、
自分は無教養なので継続の話は理解できなかったが状態モナドは非常によくわかったし、
RWHでの話もよくわかるようになった。
85:デフォルトの名無しさん
14/03/02 21:53:05.39
すまん、なにを馬鹿な質問と思うかもしれんが、教えてくれ。
Wikipedia の「プログラム意味論」の項には、[表示的意味論] の説明として、
> 対象とする言語の語句それぞれを「表示」に変換、すなわち別の言語の語句に翻訳する
とし、
> 例えば、関数型言語の表示的意味論では、領域理論の言語に翻訳する
とある。
その下の派生として、
> 「関数的意味論」または「圏論的意味論」は圏論を基本とした形式意味論である。
とあるけど、Haskellの場合、領域理論の言語では表せない、あるいは表しにくいから、
じゃあ圏論的意味論ではどうかと研究したら、これがよく合っていた、という話なの?
この辺り、Haskellの意味論を勉強したい初心者は、
いきなりの圏論的意味論にとりかかっていいものなのか、
それともまずは領域理論から学んだ方が理解しやすいのか。
86:デフォルトの名無しさん
14/03/02 22:16:59.59
>>85
あくまでも僕の理解してる範囲でだけど
モナドだとかFunctorでうまく型を合わせるためのルール(Funcotor則だとかモナド則)
を理解したいというだけであるならば、型をとりあえず集合だとおもっておいて
圏論の初歩(Awodyよりもっと簡単なぐらいの本でいいんだけどなんかないかな)
を知っていれば十分だと思われる。
一方、Haskellの型推論を改良する方法を提案したかったり、そういうガチの議論を
したかったら圏論に加えてタイプ理論まで学んで、領域理論学ぶといいとおもう。
型がついてない領域理論はいくらでも解説があるんだけど型がついてるやつはよく知らない。
ネットに転がってる奴だと Fiore "Axiomatic Domain Theory in Categories of Partial Maps" 1994
ってのがあってたまーに眺めてるけどcpoなんかの知識必須みたいなんで結局
普通の領域理論をよく知ってる必要がありそう。
87:デフォルトの名無しさん
14/03/02 22:23:48.34
Awodeyより簡単な本だとBasic Category Theory for Computer Scientistsがいい
ちなみに圏論を使ったライブラリを作るとかじゃなければ、勉強してもHaskell書く役には立たないよ
精々ドヤ顔で語れるようになるぐらい
88:デフォルトの名無しさん
14/03/02 22:31:43.87
Ekmett製ライブラリの構造を理解したい場合は圏論的な背景を知っておくのは
大事なんじゃないか感
Free Monad の Free は、まあ単純に「ただで手に入る」の意味だと思ってもいいけど
Freeなんちゃらってのが一般代数における標準的な用語であって圏論を背景にすると
よくわかるものであることなんかは知っておいて損はあるまい
89:デフォルトの名無しさん
14/03/02 22:49:00.61
レベル高いお話中すいませんが、エディタについて教えてください。
Sublime Text 2 の Ctrl-k の挙動が不快なので、
vi か Emacs に乗り換えることにしました。
どっちも簡単なテキスト編集くらいにしか使えないのですが、ちょっとしらべてみたところ、
vi では式中の選択した部分の型を表示することができるそうです。
Emacs では同じようなことができますかね?
ghc-mod を作った山本さんがむかしに、「やり方がわかればできる」的なことをつぶやいていたので、当時はできなかったのだと思うのですが、現在の状況はどうなんでしょう。
90:デフォルトの名無しさん
14/03/02 22:49:32.32
AwodyもPierceの本もモナドまで行かないからそのへんは物足りない
91:デフォルトの名無しさん
14/03/02 23:20:12.13
>>89
俺は emacs 使ってるが、haskell-mode でも型シグネチャの表示はできる。
が、vi のものと同じ挙動なのかは知らん。
トップレベルの型シグネチャが書かれた自作関数か、Prelude モジュール内の関数しか、
型シグネチャがエコーエリアに表示されない。
だから、俺はこの機能が役に立ったと感じたことはない。
カスタマイズの項目を見てると、Hoogleを参照したり、
他のモジュールをロードして型情報を得たりできるっぽいんだが、
やり方がよく分からん。
92:デフォルトの名無しさん
14/03/02 23:31:07.05
sublime使ってるなら操作で戸惑うが可能性のないeclipse fpとか使ったほうが無難じゃないかな
93:デフォルトの名無しさん
14/03/02 23:33:19.60
>>92
> 操作で戸惑うが可能性のないeclipse fp
すまん、思わず笑ってしまった
94:デフォルトの名無しさん
14/03/03 19:10:46.60
Haskell Platformの次のリリースはいつごろなんでしょうか?
URLリンク(trac.haskell.org)
を見ると
2013.4.0.0 Target: November 4th, 2013
とかありますがまだリリースされてないようです。
95:デフォルトの名無しさん
14/03/03 19:26:25.21
>>87
圏論を使ったライブラリに、どんなものがあるのかドヤ顔で語ってよ
96:デフォルトの名無しさん
14/03/03 20:29:50.96
>>95
Ekmettのライブラリはほとんど圏論的なアイデアをつかったものだよ
97:デフォルトの名無しさん
14/03/03 20:51:15.15
>>96
そのライブラリは例えば何に使うの?
98:デフォルトの名無しさん
14/03/04 00:10:03.09
圏論は論文書くときには格好いいけど、コーディングで顔を出してくるとジャマ
99:デフォルトの名無しさん
14/03/04 06:43:27.20
なんだこれURLリンク(politas.jp) >元首相が四人も、原発は駄目だ、自然エネルギーに転換しようというのを、
嘘っぱちというほど、わたしは人間不信ではありません。
むしろ四人の元首相がそろって原発は駄目だ、ということに未来を感じます。
この程度の人間が4人も日本国のトップに居たというのは悲劇ですね
失われた20年の元凶だということの裏付けとして、たとえば、素晴らしい能力を持った首相の下で日本がうまくいっていなかったのであれば、
それこそ絶望的状況でありますので、元首相がたが軒並みその程度の能力だったと露見するのは、むしろ歓迎すべきことだと私も思いますね!