emacs の mode-line の minor mode の表示が長いので短くしているのですが、 単純に短くするとわかりにくいので、色もつけています。 ところが、変数で設定できるようになっているものだと単純に propertize して setq するだけでは色がつかなかったので、 その対処も含めてまとめてみました。 この投稿は .emacs Advent Calendar 2013 の11日目の記事です。 単純に短くする 単純に短くするには minor-mode-alist の文字列を直接変更してしまうだけです。 (when (consp (assq 'abbrev-mode minor-mode-alist)) (setcar (cdr (assq 'abbrev-mode minor-mode-alist)) " ab")) (when (consp (assq 'auto-fi
ジュンク堂書店の店頭で行われているトークセッションやイベントなどを配信するポッドキャスト(ベータ版)です。 *予告なく終了する場合がありますのでご了承下さい。 iTunes Storeでも公開されました!iTunesをご利用の方は、このページから iTunes - Podcast - ジュンク堂書店「ジュンク堂書店Podcast」 「iTunesで見る」をクリックし、「無料購読」をクリックすると登録できます。 送料無料、最短当日出荷の丸善&ジュンク堂ネットストア もぜひご利用下さい ※このトークセッションの配信は終了しました。 2013/3/19収録 『型システム入門 プログラミング言語と型の理論』(オーム社)刊行記念トークセッション Benjamin C. Pierce 著・住井英二郎 監訳・遠藤侑介・酒井政裕・今井敬吾・黒木裕介・今井宜洋・才川隆文・今井健男 共訳 プログラミング言語の
A interactive Git visualization tool to educate and challenge!
まずは免責事項。 1.Disclaimer 本ブログの記載内容は、筆者が独自に QUIC に関する Chromium のソースを分析し、検証した結果です。 QUICに関するGoogle からの公式な技術資料は現状公開されていません。 今後、QUICの技術仕様の公表で本ブログの記述内容が不十分だったり、誤っている可能性があります。ご理解の上お読みください。 (注: 2013年6月27日に Google は正式に QUIC 仕様を公開しました。「Experimenting with QUIC 」 本ブログの内容は大筋では間違っていませんが、当時の解析漏れやその後の開発等により、細かいところで異なっていたり、説明が大きく不足している部分もあります。お読みになる際はご注意ください。) 2. はじめに、 Googleがまたまた新しいプロトコルの実装を始めました。Web表示の高速化を目指した SPDY
短期集中連載「量産型の逆襲」にご愛読とご声援を頂き、ありがとうございました。担当の山中(Y)です。高校生のころ、超マニアックなアニメ雑誌「アニメック」で初めて見てからこのかた、これほど「ガンダムを好きでよかった」と思ったことはありません(1979年当時、私がいた地方では放送していなかったのです。もちろん動画サイトどころかネット自体がない、ビデオすら珍しかった時代の話です)。 鳥越淳司社長へのインタビューは前回でいったん終了しますが、積み残しが膨大にあるので、いずれまた続きをやらせていただくかもしれません。そして、社内の「イベント担当者でガンダム好き」が密かにコンタクトを取ってきましたので、私の妄想だった鳥越社長のシークレットライブも、本当に実現するかもしれません。もし本当になったら、告知はこの連載枠でもやりますし、私のツイッター(@hyamanak)をフォローしていただければ、最新情報を流
(今回のコードは github:everpeace/composing-monads にあります。) 一般に、モナドって合成できないって言われますよね。 でも、モナドって合成できる場合も有るんです。 今回はまず、合成が難しい(できない)理由を説明して、 じゃぁ「モナドが合成できる時」はいつなのか? というのと「合成できるモナドたち」をちょっとだけ紹介してみます。 それにはまず、ここから始めましょう。 モナドをflatMapじゃなくてflattenで定義してみる。 flatMapで定義されるモナドのおさらい Mというモナドは次の用に定義されます。 trait Functor[F[_]]{ def map[A,B](fa:F[A])(f:(A) => B):F[B] } trait Monad[M[_]] extends Functor[M]{ def unit[A](a:A):M[A] de
私は Haskell の一番すごい所は型クラスだと思っているんですが、ここ数日それを言葉にしようとずっと悩んでいました。結局、もう一つの好きな言語なSmalltalk と比較して型クラスがどういう物か書いてみる事にしました。 型クラスという名前について Smalltalk に染まってしまった人にとって、「型クラス」というのは最悪なネーミングです。あまりにも Smalltalk のクラスと違いすぎるからです。機能的には traits や Java のインタフェースから継承を除いた物と思ったら良いです。また、「継承」や「インスタンス」など、Smalltalk と Haskell 両方で使われる言葉はことごとく別ものと思った方が良いです。 型クラスの位置づけ Smalltalk をはじめとするオブジェクト指向言語の機能をそのまま Haskell で実現しようとすると最初はすごく戸惑います。日本語
A programmer's blog - will deal with everything that relates to a programmer. Occasionally, it will contain some humour, some politics and some sport news. Monads don't compose .. and hence Monad Transformers. A monad transformer maps monads to monads. It lets you transform a monad with additional computational effects. Stated simply, if you have a monadic computation in place you can enrich it in
圏論からHaskellのIOモナドへの最短距離の近道を示してくれる文書を見つけた。 『モナドへの近道・Haskell からの寄道』 中村翔吾著 がそれだ。数学的にきちんと説明してあるので、読んですぐ理解できるようなものではないが、何となくIOモナドの考え方の雰囲気のようなものは伝わった気がする。 大げさな話になるが、この世界は何でできているかというと、いろいろな物とそれらのあいだの関係で成り立っていると言ってもいい。すなわち、世界のモデルの雛形として、集合Xと集合YとX->Yの関数 f(x) の集まりである関数の集合 Hom(X,Y) を考えることができるということだ。 たとえば、集合 X={1, 2} と集合 Y={a, b} からなる世界があり、X->Yの関数を集めた集合、Hom(X,Y) ={f, g} があったとする。すると、X, Y, Hom(X,Y) の三つの組みでこの世界は成
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く