最近、更新していないのは、仕事でちょっとしたログ監視の仕組みを作ることになって、自分しかメンテできないことを覚悟の上で、Clojureを使って構築していたから。
キーワードだけ並べてみる。
サーバー
clojure
compojure
hiccup (テスト用)
commons.io.input.Tailer
データベース
mongodb
mongoika
クライアント
dojo
maqetta
調べながらだったので、1ヶ月ぐらいかかったけれど、初めての割に早くできた。
順調に動いているようだし、とてもいい。
広げていけるといいなぁ。むりかな。
逆に、本格的に運用で...とか言われたら困るな。
READ MORE
キーワードだけ並べてみる。
サーバー
clojure
compojure
hiccup (テスト用)
commons.io.input.Tailer
データベース
mongodb
mongoika
クライアント
dojo
maqetta
調べながらだったので、1ヶ月ぐらいかかったけれど、初めての割に早くできた。
順調に動いているようだし、とてもいい。
広げていけるといいなぁ。むりかな。
逆に、本格的に運用で...とか言われたら困るな。
モノポリーの各マスに止まる確率を求める問題です。
純粋に計算で出るんじゃないかと思ったけど、だめっぽい。計算のしかたからしてわからない。どうしよう。どうしよう。
で、実際にやってみることにした。 シミュレーションです。
サイコロ振って、マス目を移動して、そこの指示に従う、ってのをたくさん繰り返して、それぞれのマスに止った数を数えて確率を計算します。
最終的に百万回で答を出してます。
ソースは長めですけど、パキパキとできあがって、たのしかったな。
ここのところ、見つけてきた公式にあてはめてっていうパターンが多かったのでさおさらかな。
そういえば、今回から1.4でやってます。mapvとかvecter系の関数はちょっと便利そう。まだ使ってないけど。
80は、数の開平の問題です。
初めは、数値解析のやりかたでやろうと思って、やってはみたものの、時間が掛りすぎてだめ。
で、結局、一番最初に思った、筆算の開平の方法を実装して解決。
READ MORE
初めは、数値解析のやりかたでやろうと思って、やってはみたものの、時間が掛りすぎてだめ。
で、結局、一番最初に思った、筆算の開平の方法を実装して解決。
ここのところ、ブログに載せるのをさぼっていたので、連投です。
79は、暗唱番号の問題です。
よくある、手元の表から何番目と何番目と何番目を答えてみたいなやつの問題。
答の列から元の表を推測します。
とりあえず、と、思って「答の列で最も左にあるやつが元の表でも左にあるでしょう」っていう方式で解いてみたら解けちゃった。
READ MORE
79は、暗唱番号の問題です。
よくある、手元の表から何番目と何番目と何番目を答えてみたいなやつの問題。
答の列から元の表を推測します。
とりあえず、と、思って「答の列で最も左にあるやつが元の表でも左にあるでしょう」っていう方式で解いてみたら解けちゃった。
ここのところ続いている、分割数の問題です。
前までの漸化式で解こうとしたら、時間がかかってだめ。
Wikipediaを見なおしてみると、別の漸化式があったのでこっちでやってみたら、まあ、なんとか。
最近、Herokuでのアプリ作りで苦闘していたり、仕事が忙しかったりして、更新してなかったけど、久しぶりにPEを解いた。
数を素数で分割する問題です。
READ MORE
数を素数で分割する問題です。
この間デスクトップアプリで作ったSKKIMEのレジストリ作成ツールをWebアプリに仕立てて、Herokuに上げました。
ソースはGithubにあります。
使ったライブラリは、
レジストリの変換のモジュールは、デスクトップアプリで使ったものそのままです。
作るとき、ファイルのダウンロードのところに手間どってしまった。
わかってしまえば、書いてあるとおりなのだけれども、Compojure/Ringの変化が速いせいか、Webで見つかる情報が古くて、そのままでは使えなかっりした。
やっぱり、「元のドキュメントはしっかり読もう」というのが教訓でした。
READ MORE
ソースはGithubにあります。
使ったライブラリは、
- Compojure
- Ring
- hiccup
レジストリの変換のモジュールは、デスクトップアプリで使ったものそのままです。
作るとき、ファイルのダウンロードのところに手間どってしまった。
わかってしまえば、書いてあるとおりなのだけれども、Compojure/Ringの変化が速いせいか、Webで見つかる情報が古くて、そのままでは使えなかっりした。
やっぱり、「元のドキュメントはしっかり読もう」というのが教訓でした。
MS IMEは突然変な変換をしてくれたり(今はよくなってるのかもしれないけど)するので好きじゃないし、ATOKにするのも癪だし、今の仕事の環境でcannaが使えなかったこともあり、だいぶ前に両方SKK(とSKKIME)に以降した。
さらに、そのころからDvorak配列に移行したこともあり、日本語の入力はDvorakJPを使っている。
さて、DvorakJPを使うためには、ローマ字とかなの変換テーブルに情報を追加する必要があるのだけれど、UNIX版であれば、それは単にテキストファイルの設定ファイルを修正すれば済むのだけれど、SKKIMEでは、なんと、設定がレジストリになってしまっており、ちまちまとGUIで設定しなくてはならないのだ。
ちょっとした修正ならなんとかするが、10を超えると苦痛でしかない。
というわけで、ずっと一部の対応だけ(k->cと拗音のところ)だけで来たのだれど、clojureのGUIの練習がてら作ってみた。
ということでこれです。
READ MORE
さらに、そのころからDvorak配列に移行したこともあり、日本語の入力はDvorakJPを使っている。
さて、DvorakJPを使うためには、ローマ字とかなの変換テーブルに情報を追加する必要があるのだけれど、UNIX版であれば、それは単にテキストファイルの設定ファイルを修正すれば済むのだけれど、SKKIMEでは、なんと、設定がレジストリになってしまっており、ちまちまとGUIで設定しなくてはならないのだ。
ちょっとした修正ならなんとかするが、10を超えると苦痛でしかない。
というわけで、ずっと一部の対応だけ(k->cと拗音のところ)だけで来たのだれど、clojureのGUIの練習がてら作ってみた。
ということでこれです。
使いかたもここにありますです。
これで、二重母音が2打鍵で打てて、「かんたん」なら4打鍵で打てるはずなんだけれど、やっぱり普通に打ってしまう。 精進せねば。
こんどは、これをHerokuでWebサービスにしてみようかな。と思っている。
100を自然数の和に分割する問題です。
初めは動的計画法のつもりで、1から積み上げていく方法をやってみたのですが、あえなく時間切れ。
Wikipediaでこれが自然数の分割というのだということを知り、とりあえずそこに出ていた式を実装してみたら解けた。
READ MORE
初めは動的計画法のつもりで、1から積み上げていく方法をやってみたのですが、あえなく時間切れ。
Wikipediaでこれが自然数の分割というのだということを知り、とりあえずそこに出ていた式を実装してみたら解けた。