2013-05-01から1ヶ月間の記事一覧
PerlでCPANモジュールをローカルインストールして使うには、Cartonを使う。 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04.2 LTS Release: 12.04 Codename: precise まず、apt等のパッケージマネージャ…
PythonでPyPIパッケージをローカルインストールして使うには、virtualenvを使う。 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 12.04.2 LTS Release: 12.04 Codename: precise まず、apt等のパッケージマネ…
普通のMarkdownの場合、2回連続で改行すれば改段落 <p></p> になるが、改行 <br> を入れる方法についてはわからず、これまでは直接HTMLタグを書いていた。 ところが、実は行末に半角スペースを2個入れれば<br>が挿入されることが仕様に書かれている。 これは言われないと気…
bashなどでコマンドがエイリアス展開されるのを無効化するにはいくつか方法がある。 たとえばlsの場合、 /bin/lsのように直接実行ファイルを指定する $(which ls)のようにコマンド置換を経由して実行ファイルを指定する command lsのようにシェルのビルトイ…
2013-05-11 修正 Postfixは送信メールのドメイン名からリレー先のIPアドレスを得る際、デフォルトでは/etc/hostsを一切参照せずいきなりDNSサーバにドメイン名についてのMXレコードを問い合わせてしまう。 したがって、/etc/hostsで設定している適当なホスト…
Postfixでは、一度ローカルに配送したメールをそのまま複製して他のホストに送信することはできない。できるだけオリジナルのメールに近いメールを複製し他のホストに送信するには、BCCとして送信先アドレスを付加したメールを作り配送すればよい。 送受信さ…
Postfixを設定する際には、下記が参考になる。 http://www.postfix.org/documentation.html 公式ドキュメント。Postfix内でメールが処理される流れについては、Other topicsの中のArchitecture overviewを読むとよい。 http://www.kobitosan.net/postfix/tra…
Listモナドを使うと、SICPのamb評価器が行うような非決定性計算ができる。 たとえば、ピタゴラス数を列挙するコードは次のように書ける。 -- ptriples.hs import Control.Monad -- guard関数を使うため ptriples = do a <- [1..] b <- [1..a] -- b <= a c <-…
Haskellだいぶ慣れてきた。 -- fizzbuzz.hs fizzbuzz n | n `mod` 15 == 0 = "fizzbuzz" | n `mod` 5 == 0 = "buzz" | n `mod` 3 == 0 = "fizz" | otherwise = show n main = mapM_ (putStrLn . fizzbuzz) [1..] $ runghc fizzbuzz.hs 1 2 fizz 4 buzz fizz …
apt-cache searchをそのまま使うと、キーワードが説明文に含まれるものも出てきてしまい探しにくい。 --names-onlyオプションを指定すると、検索対象をパッケージ名のみにすることができる。 また、検索文字列はregex(7)に対応しているので、先頭に^をつける…
How to work on lists - HaskellWiki HaskellWikiを読んでいたところ、よくわからない例を発見。 Apply a list of functions to a single element to get a list of results. It's not in the book, but it's easy when you know how: map ($ my_element) xs…