タグ

ブックマーク / ruicc.hatenablog.jp (8)

  • オブジェクト指向から理解する型クラス - think and error

    Haskell Advent Calendar2011 2日目です。 もう42時になってしまいました...さすがに遅いですね。 Haskellと言えば型クラス オブジェクト指向のクラスとHaskellの型クラスは違いますよ的な説明は見ますがどう違うか比べた情報が無い オブジェクト指向知っている人からの理解を簡単にすればHaskell理解する人が増えますね! という目論見の元にスライドを作りましたが、ユーザ視点が足りずに混乱させてしまったかも知れません。 Programming haskell chapter10 View more presentations from Ruicc Rail Haskell Advent Calendar明日はid:melponさんです。

    オブジェクト指向から理解する型クラス - think and error
    tyru
    tyru 2011/12/20
  • あなたがHaskellを使った方が良いただ一つの理由 - think and error

    あなたの思考が穴だらけだからである。 その穴だらけの思考を具現化して何になるというのだ。 遊びならいいが仕事では駄目だ。デバッグに手間がかかりすぎる。 では何故Haskellか? Haskellは包括的な記述をあなたに要請するからである。 以下はHaskellのif式だ。式なのでそれ自身値を持つ。 if n > 3 then "n is bigger than 3" else "otherwise" Haskellでのif式ではelse以降を省略することが出来ない。 使いづらいと思うだろうか。しかしifをネストし、else以降を書かなかった部分があったために致命的なバグを生んでしまったことはないだろうか。そのバグは見つけづらい。それはそうだ。コンパイルでは見つからず、あなたの思考には穴があるために何度読んでも正しいとしか思えないからだ。 賢明であれば、その前後で使用している変数の値を追いか

    あなたがHaskellを使った方が良いただ一つの理由 - think and error
  • プログラマのためのキーマップを本気で考えてみた - think and error

    最高傑作が出来た。これはおすすめせざるをえない。 まだ途中ではあるが。 (2008.12.10 z後の補完が不完全であったためdot.nodoka追加) 何を基準にするのか? プログラムをするのに、現在のキーマップは不便すぎる。なにせ、重要な記号が上や右上に追いやられてしまっているからだ。そこで記号の打ちやすさを改善すべく作ってみた。 基原則がある。頻繁に使うものを打ちやすい位置に。 そしてなるべく合理的に、覚え易く。 俺の一日の成果が以下だ。HHKpro2での使用を想定している。 修飾キーを何にするのか? デフォルトでshiftを名乗る左右のそいつだ。 SandSの存在を知った時点で俺の勝ちは見えていた。 SandSとは、Shift and Spaceのことであり(Space and Shiftという意見もある)、Spaceを押しながら他のキーを押すとshiftとして機能し、Space

    プログラマのためのキーマップを本気で考えてみた - think and error
  • iPadが出たので次世代ソフトウェアキーボードを考えてみた - think and error

    タイピングする前に親指以外の8を置きます 指置いたとこ(赤い点)をそれぞれqwertyにおける"asdfjkl;"キーを生成します 赤い点の上下(黄緑と橙の点)も同様にqwertyに対応したキーを生成します qwertyと同様にタイピングします 要はタイピング前に手に合わせた仮想キーボードを生成しましょうという仕組み。 仮想キーボードはタイピング前に毎回生成します。そうすることで、「手首の位置がブレない限り」キーボードを視認する必要がなくなります。ブレたらまたキャリブレーション。 利点は何といってもタッチタイピングが出来ること。多分。 膝の上では使えないかも知れないけど、机の上に置いておけばそれなりに使えるのではないか。 数字キーは知らん。

    iPadが出たので次世代ソフトウェアキーボードを考えてみた - think and error
  • 音を見る能力とスパゲティコードから腐臭を感じる能力 - think and error

    頭の中でチャイコフスキー5番1楽章を鳴らしながら思った。 冒頭のクラリネットを隣に並べて散歩したい、と。 と書いていこうと思ったけど、書いてて普通に変人と感じたので止めておく。 共感覚について。 最近小説漫画でやたら登場する共感覚だが、ちょっと違うと思う。 一般的な非共感覚者の、共感覚に対するイメージは例えばこうだ。 「ドの音が赤く見える」 また、Wikipediaでは以下の様に書かれている。 共感覚(きょうかんかく、synesthesia, synæsthesia)とは、ある刺激に対して通常の感覚だけでなく異なる種類の感覚をも生じさせる一部の人にみられる特殊な知覚現象をいう。 まあ間違ってはいないのだけど、だいぶ誤解がある様な気がする。 共感覚は誰でも持っているが、現代では芸術やスポーツ等に有利なそれを「共感覚」と呼んでいるに過ぎない。 共感覚とは感情から生まれるものだ。 チャイコフス

    音を見る能力とスパゲティコードから腐臭を感じる能力 - think and error
  • 言語モード - think and error

    ここ数か月非言語モードでも作りたいなと思っていてごにょごにょしていたのだけど、結果は散々なものだった。どうやら手段が悪かったらしい。 慣れないことはするもんじゃないね。 と、先月の俺なら一言で済ませてしまいそうだが、それ以前の状態にまた戻りつつあるので、気づいたことを書いておこうと思う。 言語とは論理を扱う手段だ。自分の内部だけに限定すれば。他人との対話ツールという意味合いも大きいけどまあそこはおいておく。 今回俺がやってみたかったのは言語以外のものので論理を扱おうというものだ。何故かといったら言語はコストが高いから。出来れば視覚を代用として用いたかったのだが、それを制作する段階まで到達していない。何故視覚かと言ったらそれがおそらく言語よりコストが低いから。何故出来なかったかと言ったら、要するに言語という手段を捨てたから。今ある唯一の手段を捨ててから他の代替手段を構築するなんてできるわけが

    言語モード - think and error
  • Vim講座1 - think and error

    Vim講座3 - think and error テキストエディタであるvimはとても扱いやすいのだが、Vimてモード概念があって敷居が高い(誤用)よね。ということで少しだけ書いてみる。 viキー操作メモ(Hishidama's vi Memo) こんなサイトもあるわけなのだけど、これ不便。普段使わないものまで全て書いてあるからだ。 初心者にとっては、どこまで知ればミニマルなのかが知りたいというのに。 概要 モード概念 カーソル移動 インサートモードへ 保存 ////////////基礎終了//////////// ビジュアルモードとコピペ ジャンプ 置換 Undo,Redo[***IMPORTANT***] 一文字置換 こうやってみると長そうだね. モード概念 モードは4つ。ノーマルモード、インサートモード、ビジュアルモード、コマンドモード。 ノーマルモード 起動したときはこのモード。移

    Vim講座1 - think and error
    tyru
    tyru 2009/01/14
    初心者の頃にこの記事があったら・・・orz
  • Vimのモードと拡張性 - think and error

    Vimにはモードが4つもある,覚えにくい,わかりにくい,頭悪い,と嘆く方が居るのだが,EmacsのC-xから始まるコマンドはもはや一つのモードみたいなもんじゃないだろうか.いくつあるんだよ.保存とかに使われているのでVimのコマンドラインモード相当だきっと. もちろんEmacsにもC-SPCから始まる選択モードも存在するので,合わせて3モード. インサートモードが2つに分かれただけですよ. まあEmacsの利点は,同様のキーバインドが至る場所に簡単に実装できる点だと思う.実際いろんな場所にそのサブセットは使われているし.確かに便利だし.Vimはそう簡単にはいかないんだよなー. ただVimに学ぶことはたくさんあると思う.モード概念.vimの原型が古典時代に出現した当時から完成したということは畏れるべきことだ.Violinは出現したときに既にその姿は完成されていたということ位有り得ない.まあV

    Vimのモードと拡張性 - think and error
  • 1