HaskellでWebサービスをやるときに足りないと思うこと

Yesodでもscottyでもいいから、現実的にHaskellでWebサービスをやりたいと思ったときに、何が足りないかなあと考えると、ホットデプロイ(サービスを止めないでアップデートする仕組み)が足りないんだと思う。 ステートレスもしくはステートを常に再構築可…

http-conduitをWindowsで使う

http://hackage.haskell.org/packages/archive/http-conduit/1.9.4.4/doc/html/Network-HTTP-Conduit.html の一番上に出てくるサンプルのコードを動かそうとしてもWindowsではエラーが出る。 上から三番目のサンプルを読めば書いてあるけど Any network code…

可変長引数とか

http://d.hatena.ne.jp/asakamirai/20130202/1359811868 の延長で、まだまだ理解が甘いようなので、可変長引数について調べている。http://togetter.com/li/221528ここにまとまっている内容がとても参考になりそうなのだけど、論文みたいなのを読みといて実…

HaskellでWPF(するための準備中)

http://d.hatena.ne.jp/asakamirai/20130104/1357324954 で書いてた.Net側のラッパーコードがだいぶ自動生成できるようになった。とりあえずvaluteType以外はビルドが通るようになったが、多分ビルドが通るだけで動かない場所は多そう。てか、Haskell側がま…

haskellの実行速度

mrubyの速度測ってみたついでにHaskellって速いんだっけ? と気になって試してみた。http://itpro.nikkeibp.co.jp/article/COLUMN/20070403/267180/?P=2 実際、現在のGHCは、正格のプログラムを書いた場合でも、Cでループを使ったプログラムと比べてそん色の…

mrubyの実行速度

ふと思い立って、「mrubyって軽量とはいうけど、実行速度はどうなんだろう。普通のrubyより速いのか遅いのか」ということが気になったのでcygwinでビルドしてみた。 bygwinならmake一発でビルドできるらしいのだが、うちではなぜかうまくいかなかった(CC=gc…

Haskellで引数の型を可変に

C++やら.Netやらでよくあるような同じ名称だけど異なる引数を持つ関数(正しい名称は忘れたけど)ってHaskellでできないんだろうかと思って調べた。 結論としては関数も型なのでできるのだが、FlexibleInstances拡張を入れる必要があるっぽい。 以下がすごい…

HaskellでWPF

だがしかし、どうしてもgtkがなんとなくなじまない。 GUIに関してはWPFがすごく気に入っているので(WPFの最大の欠点は.Netだということだ)、WPFをどうしても使いたい、という気持ちを捨てきれなかった。 しょうがないから自分でラッパーを書いてみようか、…

gtk2hs

その次に試してみたのが、gtk2hs。linux系のOSならgtkだし、Leksah(Haskellで書かれたHaskellのIDEらしい)はgtkで書かれてそう(?)、ということもあって、少なくともこれなら最低限のことはできるはず、と考えて試してみた。以下に描かれている通りにやっ…

hs-dotnet

次に試してみたのが、hs-dotnet。WPFみたいなことがやりたいなら.Netを使ってしまえばいいじゃない、という発想。 以下の記事などを参考にしつつ試してみた。 http://d.hatena.ne.jp/sirocco/20101026/1288085914文字列をSjisに変換する必要があったり、記事…

GLUT

最初に試してみたのがGLUT。 これは最新のHaskell Platformだと最初から入ってるので、インストールとかで失敗することはまずなさげ。 ただし、これでWindowを作ると、Windowを閉じてもprogramが終わらない問題が発生した。 この問題はdllをOpenGLUTのもので…

HaskellのGUI@Windows

HaskellのGUI@Windowsを求めて彷徨った経過をメモ。 ほしいものは.NetのWPFみたいなの。

yesodでpostgresqlを使う@Windows7 64bit環境

ふと思い立ってyesodを動かしてみようと思ったのだけど、せっかくならsqliteじゃなくてPostgreSQLを使用したい。それなりに詰まったのでメモを残してみようかと。環境とか使用したソフトのバージョンは以下のような感じ。 Windows7 Ultimate SP1 64bit Haske…

オブジェクトのプロパティ

オブジェクトのプロパティについていろいろやってみた。 "get"や"set"や"Item"が言語仕様として気持ち悪いなあ。 もう少しスマートにならんものか。 というわけでまたテケトーコード

Arrayのクリア

ふと思いついてArrayのデータをクリアする方法をいろいろ試してみる。 超テケトーコード。

オブジェクトのメソッドとか

すごい基本的な内容だけど、こういうのさえマニュアルには無いので困る。オブジェクト関連はOcamlとF#で違うみたいなので、Ocamlもあまり参考にならない。 C#をやってたりするとこういうところで勘が働くのかなあ。 というわけでオブジェクトのコード。

F#を始める

F#の日本語の情報がぐぐってもなかなか出て来ない(多分名前のせい)ので、いろいろメモっておく。 項目名はぐぐりやすいように、F#.NETにしておいた。FSharpとかF-Sharpの方がいいんだろうか。とりあえずリンク集 公式ページ:http://research.microsoft.co…