CLOVER🍀

That was when it all began.

2012-10-01から1ヶ月間の記事一覧

ClojureでJavaクラスのフィールドに値を設定する

Clojureで、Javaクラスのフィールドから値を読み出すことはよくありましたが、そういえば値の設定はやったことがありませんでした。メソッド呼び出しのように (.field-name instance-name value) みたいな感じで書くのかな?と思いきや、ちょっと違う模様。S…

doc、find-doc、source、apropos

Clojureについては、普段はClojureDocsとかGoogleを使って調べていますが、REPLで使えるマクロ/関数を使ってもよさそう。まー、ClojureDocsだとサンプルとかも載っているので、それなりに効果はあるのですが。 docマクロ 指定した関数のdoc-stringを表示す…

ClojureでJavaのクラスを作る

これまで、だいぶ目を背けていたのですが、ClojureとJavaを使うにあたり、そろそろClojureでJavaのクラスを作成したり継承したりというのを覚えてみようと思います。う〜ん、遅いネタですねぇ…。ま、気にせずいってみましょう。 まずは Clojureでソースを書…

Clojureのクラスに、コンストラクタとStateを定義する

続いて、今度はClojureでコンストラクタを持つクラスを作成してみます。 foo.clj (ns foo (:gen-class :init init :state state :constructors {[String] []} :methods [[decorate [char] String]])) (defn -init [val] [[] val]) (defn -decorate [this c] …

Clojureの並列処理関連の関数

Clojureで並列・並行処理といえばSTMやエージェントが有名だと思いますが、お手軽な関数も用意されているみたいなので、調べてみました。 pmap map関数の並列版です。与えたシーケンスに対して、関数を並列に適用してくれます。 (time (println (let [sleep-…

package-info.javaの一括生成

だいぶ遅れているのですが、こちらのお題に参加してみることにしました。 http://npnl.hatenablog.jp/entry/2012/08/17/014930もうちょっと、早く見つけておけばよかった…なんか、Groovyが人気っぽいので、ScalaとClojureでいってみます。ターゲットのディレ…

Javaのネットワークに関するプロパティについて

今日、NIO.2関連の内容を見ていて、一緒に見つけたページなのですが… http://itpro.nikkeibp.co.jp/article/COLUMN/20120327/388103/?ST=develop&P=6システムで使っているプロキシの設定を使うことができる、 java.net.useSystemProxiesなんてプロパティあっ…

map関数の並列版、pmap関数

GroovyのGParsとかを見ていて、そういえばClojureって並列コレクションとか持ってないのかなぁと思って見てみたら、なんか少しはありそうな感じです。とりあえず、map関数の並列版である、pmap関数を見つけたのでちょっと試してみました。ClojureDocsでの例…

sbt 0.12系でWARファイルを作る時の注意

前のエントリで、「TomcatにWARファイルをデプロイ…」なんてことを書いてましたが、xsbt-web-pluginを使うのにこれまたてこずっていたという…。う〜ん、久しぶりにこの辺りを触ると、だいたいハマりますね(笑)。今回使用した、sbtとxsbt-web-pluginのバー…

Tomcat 7から追加された、StuckThreadDetectionValveを使う

こちらの記事にすごーくしれっと載っているのですが http://www.atmarkit.co.jp/fjava/rensai4/tomcat7_03/03.html Tomcat 7から、StuckThreadDetectionValveというValveが追加されています。これを使うと、リクエストに時間がかかっている処理を検知するこ…

HttpClientとConnectionManagerとCLOSE_WAITと

JavaでHTTP通信をやろうとすると、必ずと言っていいほど登場する、Apache HttpClient4(以前は、Jakarta Commons HttpClient3)ですが、これでちょっとハマっていた事象を見かけたので、軽くメモを。あ、その時に使われていたのは、Jakarta Commons HttpClie…

JDK 6から同梱されている、簡易HTTPサーバを使う

ちょっと試したいことがあって、HTTPサーバを用意したかったのですがApacheとかをインストールするのも面倒だったので、JDK 6から同梱されている簡易HTTPサーバを使ってみることにしました。が、実際に書いたのはJavaも面倒で、Groovyですが(笑)。参考にし…