2012-02-11
■[haskell]GHCソースコードリーディング勉強会 第0回(準備編)に参加しました
http://partake.in/events/57179633-b2ad-4e7d-b56e-c4ac8e6b178e
リンク集がわりに
- GHC Commentary: The Compiler
http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler
- Compiling one module: HscMain
http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/HscMain
- 岡部さんの資料
http://wiki.haskell.jp/Workshop/ReadGHC/0
http://d.hatena.ne.jp/suztomo/20111224/1324718354
- I know kung fu: learning STG by example http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/GeneratedCodeTracing
- the compilation of Hello Factorial!
http://blog.ezyang.com/2011/04/tracing-the-compilation-of-hello-factorial/
- Implementing lazy functional languages on stock hardware: the Spineless Tagless G-machine - Version 2.5 (1992)
http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.53.3729
- The Implementation of Functional Programming Languages http://research.microsoft.com/en-us/um/people/simonpj/papers/slpj-book-1987/
- Implementing functional languages: a tutorial http://research.microsoft.com/en-us/um/people/simonpj/papers/pj-lester-book/
- How to make a fast curry: push/enter vs eval/apply
http://research.microsoft.com/en-us/um/people/simonpj/papers/eval-apply/
- GHCのこと
http://www.kotha.net/hperf/ghc.html
Core言語の操作的解釈
http://www.haskell.org/ghc/docs/7.4.1/html/libraries/ghc-7.4.1/
2011-05-16
■Yesod勉強会
こちらのYesod勉強会に参加しました。
http://partake.in/events/5f27d86f-0211-4af4-9a9e-5f123056e44e
Web業界は誇大広告
Happs->happstack,WASH,Haskell CGIの比較
happsは死んだらしい。
Happstack,Snap,Yesodの三種類
2006年からHackageがでてきたので、使える(実用的な)ライブラリが増えた。
Textの登場
HaskellのStringの欠点
大きい、遅い。
ByteStringの登場のおかげで早くなった。リストではなくByte Arrayなので、
ByteStringはエンコーディングを考慮しないバイト列だったので、UTF16でエンコードされた16ビット列をあらわすTextの登場。
Itreateeの登場
次世代遅延I/O
- 高速
- compsable
- 安全
- リソースの速やかな開放
Enumrator -> Enumratee -> Iteratee
Happstack
Happstackは高速化されIteratee化
BarleyといHasekellのお勉強サイトがあるみたいです。
snap周辺のライブラリ
- heiste
- xmlhtl
Yesodの登場
- 早い
- フルスタック
yesodで書かれたページ
-- htpp://yesodweb.com
-- yacage
--
WAI (Web Application Interface)
parseRoutes
URL Routeを扱うDSL
persistent
永続データを扱うDSL
Non Realional
Mongo DBに対応
devel-server
コードを変更した時にコンパイルせずに実行可能
webkit-handler
webアプリをスタンドアローンGUIアプリの様に実行できる。
i18n
Yesod0.8.1から追加
WAI
- Handler Application -> I
- Application Request -> Iteratee IO Response
cab
山本さんが作っているパッケージ管理コマンド
gitcab
2007-05-10
■[Gauche Night][Scheme]
昨日はGauche Nightにいってきました。
座談会
出演者はshiroさん弾さんnobsunさん野田開さん司会のえんどさんそして黒田さんでした。
ポイントは以下のとおり
河合さんがschemeにパッケージシステムを導入したと言ったとき
黒田さんの名前空間二つにしたんじゃないんですか
弾さんの「言語以外でプログラムが組めるようになればいいのに」発言で
nobsunと黒田さんに攻撃されていた
黒田さんがHaskellにそれってパフォーマンス考えてないでしょ的な発言
Common Lisp と Schemeのマクロの違い。
弾さんのHaskellではYコンビネタがかけない
関数型で状態の表現ができないといわれたときの
デモ
とおるさんの毎度おなじみメフィスト
ruiさんのEPGというパーサー
終了後
河合さん弾さん野田さんと話をしました。
河合さんに何故Schemeは継続をFirst Classにしているかと
Common LispとSchemeのマクロの違いについて質問しました。
マクロの違いを聞いたときに河合さんが実際にマクロをかいて違いを見せてくれたんですけど、
マクロ組む書くの早かったです。
このコーディングスピードがあのGaucheの更新スピードを生みだしているのだとおもいました。
call/ccでできることはcps変換でできる
弾さんにはいつSchemeに触れたかを質問しました。
はじめてSchemeに触れたのは大学の授業で、テキストはSICPだというお話でした。
SICPの循環インタプリンタは役にたった
SICPはあめがないので
新しく教科書をつくるWebプログラムなどあめ用意すべきだ
などのお話を聞きしました
野田さんには某T大の人たちがGoogleごっそりとられてるっていうお話をお聞きしました。
あと、はやみさんが河合さんに「λかわいいよλ」とノートPCにサインをしてもらっていました。
(途中あとで書く)

