2009-01-01から1年間の記事一覧

副作用(side-effect)をめぐって

Haskellプログラミングを始めようとしているプログラマに「Haskellには副作用があるのか」という質問をされると,「ある」と答えるHaskellerと「ない」と答えるHaskellerがいるらしい(私は「ない」と答える派).これでは,「いったいどっちが本当?」とい…

HIMA3 開催のご案内

第3回 HIMA(Haskell Internet Meeting Anytime)を12月13日(日) 19:00〜22:00 に開催いたします.HIMAはHaskellプログラミングに興味をもつ人が,とりとめなく,おしゃべりをするという会です.一応のお題はありますが,Haskellの知識経験の有無深浅にかかわ…

const をめぐるあれこれ

Prelude には,const :: a -> b -> a という関数が定義されています.a -> b -> a という型は a -> (b -> a) のことなので,この関数を引数に適用すると,b -> a という型の関数になります.できあがった関数はどのような値 v :: b に適用しても,この関数を…

Haskellで「ものまねどり Mocking Bird」

自己言及がはいるとHaskellでは型付けができないので,無理かなとおもったら,unsafeCoerceという邪悪なものを使う方法があるそうです.これで,いろいろ遊べそう. module Birds where import Control.Applicative import Unsafe.Coerce -- Haskellで定義済…

アナグラム

Haskellらしさってなんだろうということを考えつつ,[id:yard:20091104]にある課題を解くプログラムを考える過程を記録してみた.整理していないのでとりとめがないです. 単語辞書から相互にアナグラムになっている単語を集める. アナグラムとは,(意味の…

ちょっとしたプログラミング

[id:yarb:20091109]にちょっとしたお題があったので,頭のなかを晒してみよう. 2乗した結果に1から9までの数字が1度ずつ現れる整数をすべて挙げよ まぁ素朴に1から100,000までの数字をチェックしよう. sortを使うからData.ListをインポートすればOKかな. …

Programming in Haskell

こちらの翻訳本もいよいよでますね.プログラミングHaskell作者: Graham Hutton,山本和彦出版社/メーカー: オーム社発売日: 2009/11/11メディア: 単行本(ソフトカバー)購入: 14人 クリック: 503回この商品を含むブログ (115件) を見る

とりあえず,チュートリアル. % cabal install happs-tutorialとりあえずローカルで見ることできるようにする. % cd ~/work % tar xvf ~/.cabal/packages/hakcage.haskell.org/happs-tutorial/0.9.0/happs-tutorial-0.9.0.tar.gz % cd happs-tutorial-0.9.…

できてきた

すこし薄くなったかな. Real World Haskell―実戦で学ぶ関数型言語プログラミング作者: Bryan O'Sullivan,John Goerzen,Don Stewart,山下伸夫,伊東勝利,株式会社タイムインターメディア出版社/メーカー: オライリージャパン発売日: 2009/10/26メディア: 大型…

O'Reilly Japan - Real World Haskell

第一報です :) 楽しんでいただければ幸いです。(10/17 追記) アマゾンにも出たようです。 Real World Haskell―実戦で学ぶ関数型言語プログラミング作者: Bryan O'Sullivan,John Goerzen,Don Stewart,山下伸夫,伊東勝利,株式会社タイムインターメディア出版社…

特殊文字

すぐに忘れるのでメモ # $ % & _ { } ~ ^ \

スクロールバーの幅

デフォルトでは幅がひろすぎる.$HOME/.gtkrc-2.0 style "scroll" { GtkScrollbar::slider-width = 10 } class "*" style "scroll"

Cheatsheet

なんのことはない,ちゃんと本家に用意されてたんだね.そらそうか.

大文字・小文字の反転(その2)

[id:mzp:20090804#maybe]Maybeで繋げるなら,こんな感じかな. import Control.Monad import Data.Char import Data.Maybe affect :: (MonadPlus m, Eq a) => (a -> a) -> a -> m a f `affect` x = if fx == x then mzero else return fx where fx = f x inv…

大文字・小文字の反転(その1)

[id:mzp:20090804#invert]変換関数を直接作るなら,こんな感じかな. import Control.Arrow lowers = ['a'..'z'] uppers = ['A'..'Z'] exFun :: Eq a => (a,b) -> (a -> b) -> a -> b exFun (x,y) f x' = if x == x' then y else f x' invertChar :: Char ->…

modキーの割り当て変更

modキーはデフォルトでは(左?)Altキー. これだとEmacsのキーバインドど干渉するので,窓キーに変更することにした. つい先月末まで使っていたThinkPad X 23には窓キーがなかったんだよね.ふふふ.でもこんどのThinkPad X200sにはちゃんと窓キーあるもんね…

横2分割 縦2分割

xmonadを使いはじめると,1つのワークスペースをEmacs 1フレームで使うことが普通になる. 各種のモードで上下2分割ウィンドウを使うことが多いのだけれど,これを左右2分割に切り換えたい.で見つけたページ:Meadow/Emacs memo: ウィンドウ/フレーム関連 ―…

xmonad の cheat sheet

xmonad : a guided tourを読みながらのメモいまのところ軟弱に:) Gnome中で利用している.そのうち生で使うかも(ぉ!?) xmonad.hsは今のところデフォルトままで,使っている. キーバインド一覧 キー操作 効果 mod-shift-return 端末を開く mod-space レイア…

D02HWで繋ぐ

接続 % sudo pon emobile切断 % sudo poff emobile /etc/ppp/peers/emobile hide-password noauth connect "/usr/sbin/chat -v -f /etc/chatscripts/emobile-ppp" debug /dev/ttyUSB0 460800 defaultroute noipdefault user "em" remotename emobile-ppp ipp…

バックスラッシュ

\symbol{"5C}

Haskellに副作用はないのか?

Haskellには副作用はないのか?議論に微かな違和感があるような気がしたのですが,それが何にたいする違和感かよくわかりませんでした.件の記事を読みかえして,また違和感を感じたので,すこし考えてみることにします. 「副作用」って何のことを言ってい…

Haskellerが勘違いして『Scheme初心者へのアドバイス』を書いてみた

Scheme初心者へのアドバイスを書いてみる - ヤドカリデンキ商会(第一倉庫)にインスパイアされて書いてみた. ネタだからね真に受けないでね. お題はServer error トップダウンに考える 部品からいきなり作ってはいけません.その部品にひきずられてしまい…

安西徹雄:英文翻訳術

英文翻訳術 (ちくま学芸文庫)作者: 安西徹雄出版社/メーカー: 筑摩書房発売日: 1995/05メディア: 文庫購入: 23人 クリック: 235回この商品を含むブログ (31件) を見る 今は手元に1冊しかないのだけれど,何冊も買っているはずなのである.江川泰一郎「英文法…

クレジットカード番号の Check Digit

クレジットカード番号の最後の桁はチェック用の桁です.チェックは,クレジット番号を一桁おきに倍にして(10以上の場合は9を引いて)足し合せそれが10で割り切れるかどうかを知らべるものです.ただし,最後のチェック用の桁を倍にすることがないように,番…

Ubuntu 9.04

8.10 から 9.04 にアップグレードしてみたんだけどフォントに関連して2つすんなりいかなくて困った.自己解決する能力がない orz ので現象だけ記録しておく. emacs-snapshot M+IPAの日本語フォントが使えない. (add-to-list 'default-frame-alist '(font .…

Real World Haskell 読書会

内容 O'Reilly刊の Real World Haskellを読む 日時 2009年04月18日(土)13:00 〜 18:00 場所 株式会社タイムインターメディア 2F会議室 参加登録 資料準備,会場のキャパの都合などがあるので'''必ず'''参加登録をお願いします. 備考 今後1回/月のペース…

JUS勉強会「Haskellによる関数プログラミング」資料

先週3/20に行われました勉強会に祝日にもかかわらず参加いただきましてありがとうございます. 当日の資料はhttp://hop.timedia.co.jp/downloads/jus200903にて公開しております. また,当日,説明できなかった部分などの解説はすこし整理してから公開しま…

SD 記事のエラッタ

Software Design 4月号「—Haskellで学ぶ— 関数プログラミングことはじめ」の記事に関して校正で見おとした誤りなどの修正を以下のURLで公開しています.http://hop.timedia.co.jp/show/article/SD200904また,感想など聞かせていただけると大変嬉しいです.

Software Design 4月号

id:software_design「—Haskellで学ぶ— 関数プログラミングことはじめ」にて記事を書きました.読んでいただけると嬉しいです.