サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
パリ五輪
takaki-web.media-as.org
Yesodを覚えるのにチュートリアルだけやっていてもしょうがないので何かしらアプリケーションを作ってみることにする。定番のBlogを作ってみることにした。仕様を考えるのもめんどくさいので(どうせ大層なものでもないし) 後述のRoRのチュートリアルにある Blog を移植することにした。しかしタグの実装のところがうまく行ってない。複雑なフォームの処理の仕方がまだよくわかっていないためである。 完成はしていないのだが作成してみての感想。Haskellの文法を利用してエラーチェックが行われることがかなり強力。テンプレートのリンク切れもURLのルーティングのハンドラの未実装もコンパイル時に静的に検出される。設定だけしておいて中身がないという状態をランタイムでエラーが検出されることがないのはかなり効率がいい。設定ファイルを記述したあとエラーが出なくなるまで実装を続ければいいという意識でやっていける。
SJISのファイルを扱うのに苦労した。適当にやるとinvalite byte sequenceとエラー吐かれて終了。きちんと変換しないといけない。 import Codec.Text.IConv import Data.ByteString.Lazy.Char8 (pack, unpack) import qualified Data.ByteString.Lazy.Char8 as BS import Codec.Binary.UTF8.String inFile = "z_sjis.txt" main = do cs <- BS.readFile inFile let u8s = convert "CP932" "UTF-8" cs -- OK BS.putStr u8s putStr $ decodeString (unpack u8s) -- NG putStr (unpack u
REPLとはRead Eval Print Loopの略。Pythonの対話モード・irb・Lispの対話モードなどである。ちょろっと探してみたら次のようなのがみつかった。 Devel::REPL (re.pl) App::REPL (iperl) Shell::Perl (pirl) perlconsole (perlcosole) 括弧内が付属のコマンドである。iperlとpirlは評価の表示がちょっと詳しい。具体的にはクラスインスタントを評価したときにHASHとか愛想のない内容ではない。 Devel::REPL $ use CGI $ CGI->new $CGI1 = CGI=HASH(0x3b2a0f0); App::REPL
cloneしたリポジトリを変更して commit; pushとしてoriginを編集しようとしたら…???変更が反映されていない。あれ、commit失敗しているのかねと git log を見たら入っている。なんだこりゃと思ったが…。git pushしたときに次のようなメッセージが出ていたが…。 warning: updating the currently checked out branch; this may cause confusion, as the index and working tree do not reflect changes that are now in HEAD. git pushは gitの管理のところにcommit されるだけでワーキングツリーには反映されない。pushしたけりゃ専用リポジトリを用意しておけということみたい。確かに編集中にpushさ
What is? "hskkserv" is SKK Server implemented in Haskell. If you want to download, please visit SourceForge.jp. This soft is for Japanese native speakers, so I will not write details in English. How to get Use darcs. darcs get http://hskkserv.sourceforge.jp/hskkserv/ darcsweb http://hskkserv.sourceforge.jp/cgi-bin/darcsweb/darcsweb.cgi?r=hskkserv;a=summary How to use Use with inetd (, xinetd, daem
<p>NFSの代わりに使ったりするということだったので、サーバとクライアントという図式でサーバが調整を行うのだと思っていたら違っていた。各サーバーが共有のブロックデバイスを持ち、各サーバーが互い協調して書き込みをする仕組みだった。つまりFCやiSCSIで共有ディスクを接続して運用するということになる。</p> <p>今回の実験ではLinuxのiscsitargetを使った。iscsitargetでiSCSIディスクを提供するサーバーを1台用意して2台のクライアントからiSCSIでブロックデバイスを共有。そしてOCFS2でマウントする構成を取った。kernelは 2.6.26-2-{686,amd64}で実験。<br /></p> <h2>iSCSIの設定</h2> <p></p> <p>ざっと書く。iSCSIなりFCなりで共有ディスクがすでにあるなら飛ばす。</p> iscsitarget
10/14(土)に名古屋フンタ会を開催しました。 今回は10人。こじんまり。 宝石の煌めきの拡張。都市は地味。東洋はいろいろ考えることがありそう。交易はインフレ。城塞はまだやってない。 Between Two Cities拡張。同じ方向での拡張か。地形ルールは好き好きがあるかもな。 One Night Werewolf。謎の役職入れすぎで何がなんだかわからなくなっていた。無職って重要だねと思った。 レジスタンス。2時間で2ゲームしかできなかった。各ミッションでメンバー選考を5回ぎりぎりまで繰り返して延々議論を繰り返してもう長い長い。Inquisitor拡張だけ入れた状態で2回失敗しああと3成功とか頑張った。しかし疲れ果てた。 名古屋フンタ会 2017#9 メモ 9/2に名古屋フンタ会を開催 参加者20人。当日申し込みが何人がいたがまだ対応できる。 ロストレガシーの新版を見たがなんか微妙 そ
このページを最初にブックマークしてみませんか?
『top · Takaki's Web』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く