久し振りにProject Eulerを解きました。
(※ なんと4年前に書いた下書きがそのままになっていた)
数列がはじめからN個与えられたときに得られる母関数では、N+1まで行くと間違った値(BOP)が出ます。 与える数列を増やしていったときに得られるすべてのBOPの和を求める問題です。
そういえば、こういうのって、補間法かなんか使えば出るんじゃなかったっけ…と思って解いたら解けました。
ウィキペディアで調べたら、ラグランジェ補間法ってやつだったので、まあ、そのまま、式にした感じです。
コメントにも書きましたけど、もうちょっとclojureらしく書いたほうがよかったのかもしれないんですが、そうすると、たぶん、元の式の形がなくなってしまいそう。
...
twitterでciderの 0.9.0 が出たという情報が流れてきました。
->> もう、 0.9.1 になってます。 (6/27 追記)
マイナーバージョンが1上ったということで、いくつか新しい機能が追加されています。
メンテナのBastovさんがブログで、いくつかの重要な変更について書いています。
アップデート
ciderを入れ替えるお決まりの作業は以下の2つ。
emacs lisp のパッケージをアップデートする。僕は、melpa_stableのを入れてます。
$HOME/.lein/profiles.clj の cider/cider-nrepl のバージョンを変更する。
ですが、今回は、起動時に、
WARNING: CIDER requires nREPL 0.2.7 (or newer) to work...
emacs 24.5 の Windows 64bit 版 を見つけたのを機に、 MSYS から MSYS2 に変更してみました。
MSYS2 は git が使えて、パッケージマネージャの pacman も使えるので、移行する価値がありそうです。
だいたい上手く動いたのですが、magit を起動しようとすると、
magit-get-top-dir: d:/d/userdata/xxx/xxx/xxx/ isn't an existing directory
と言われてしまい、起動に失敗します。どう見ても、パスの取得がうまくいってませんね。
ググってみると、以下のページを見つけました。
https://github.com/magit/magit/issues/1318
cygwin でも同様のことが起るようですね。
中程にMSYSでの対応策が書いてあって、
(defun...

メインのキーボードとして、もう10年以上、kinesis advantageキーボードをDvorak配列で使っているわけですが、先の投稿で、Dvorak programmerという配列、と言っても、最上段の数字と記号を入れ替えたものなわけですが、これを試してみようと思って、キーボードのマッピングを改めて見てみたわけです。
出発点ということで、現状の配列のコメントを。 リマップ後の画像は前にも投稿してますが、まあ、コメント付きということで。
オリジナルのマッピング
advantage の dvorak のもともとの配列は、こんな感じです。
この配列には、大きな問題がありまして、
○...

突然ですが、こんなサイトを見つけたので、試してみました。
日本語
まずは、日本語だったらどんな分布だろうと思ってタイプしてみました。
入力したのは、Wikipediaの「それから」の説明文を、DvorakJPでSKKを使って入力したものです。
SKKはシフトキーを多用しますが、カウントされてませんが、大文字のときのシフトは数に入れないのがこの測定ツールの仕様みたいです。
Dvorak
やっぱり、なんか、理想的ですよねー。
QWERTY
だいたいにおいて、入力をDvorakJPでやってるので、それをQWERTYにしたときの結果が不利になるのはわかりきってますが、いかにも、ホーム行の使用率は低いですね。
DvorakJPでは、か行にcを使うので、kの頻度はcの頻度になるはずです。
COLEMAK
Dvorakよりも優れていると言われるCOLEMAKですが、これだけ見ると、Dvorak配列の方が良さそうに見えますね。
COLEMAKに合った方式にしたらよりよくなるかもしれません。
Clojureのソースコード
こんどはclojureのソースでやってみます。
コードは、手元にあった適当なやつです。
DVORAK
dvorakです。括弧、角括弧を多様するので、シフトキーの使用率が高くなってますね。
たしかに、右上の方を使うことが多いと感じます。
DVORAK-PROGRAMER
プログラマ用のDVORAK配列ってのがあるようで、なんと、4段目の無シフトのところに各種記号がわりあてられています。数字の配列も独特です。...
今日は、Halake のイベントに参加して、ブラウザで動作している clojurescript 側でreplを実現するためのモジュールと思われる weasel をいじってみました。
なにしろ、ここってそういう記事が書きにくいので、markdown で gist に入れました。
もう少し追加する予定です。
clojurescript 側でreplを実現するためのモジュールっぽい
weasel をいじってみました。
手始めにweaselのサンプル
weaselのディレクトリにある、 weasel-example...