WASH

WASHとText.Html

WASH のいいところは、コンパイルが通れば CGI が valid な html を生成する点であるが、Ajax でいろいろやろうとするとむしろ困る。部分的な html が吐けないからね。 で、Text.Html なわけだけれど、これはちょっとよくわからん。入力された内容を pre タ…

うーん。

どうやら、WASH-2.10だと半角の空白をエスケープした結果は%20になる。でも、WASH-2.9だと+になるっぽい。 困りますね。

日本語のページ名

どうもうまくいかんね。記号とかをURLに変換してくれる関数はWASHに入ってたから、空白とか記号が入ってるページ名はすぐに扱えるようになりました。 で、次は日本語のページ名。試しに日本語を入れてみたんだけど、どうにもうまくいかない。手元のインタプ…

報告

上に書いた方法(環境をネストさせる方法)で、とりあえず動作することは確認しました。WASHは、最初のページ(CGI ())からどのページまで進んだかっていう状態を文字列として保存しておいて、サーバにアクセスするたびに状態を復元している感じなので、環境もs…

どうしようかね。

考えられる解決策は、Readerモナドの中で同じ環境を持ったReaderモナドを作ること。非常に無駄な感じがして嫌ですが、パーサは環境がないと動かないように作ってあるので仕方ないです。なんかスマートな方法はないのかねー。

wiki 全体を Reader モナドにくるむ

昨日からずっと、wiki 全体を Reader モナドにくるもうと思って作業を続けてきたわけですが、結論から言うと、失敗しました。submit っていう関数の型らへんで。以下、その原因など。WASH を知らないと全然わからないとは思うけど。WASH では、ページの遷移…

訂正!!

ごめん、動いてる! 上と同じソースをx86のdebianのetchでコンパイルして(ghc-6.6、WashNGo-2.9)、x86のようわからんLinux(2.4のカーネル、apache-1.3.37)で動かしたら動いた。うまくいかない環境は、PowerPCのMacOSX Tigerのghc6.6のWashNGo-2.10でコンパイ…

WASHでのCookieの扱い

WIKIに簡単なパスワード認証の機能を付けようと思って、Cookieの使い方についていろいろ調べてみた。 そもそもサンプルコードがコンパイルできない(型エラー)のでとてもあやしいが。 型が合うように適当にサンプルを書き換えたソースがこれ。 module Main wh…

WASH

例のwikiは、とりあえずある程度の形になってきたので、今はソースをきれいにしようと頑張ってます。 WASHにはたくさん関数があって、うまく使えばもっと短くなる気がするんだけど、英語に弱いのでマニュアルをじっくりと読む気にはなかなかなれません。 全…