Groovy
書籍 「集合知プログラミング」 の 「7章 決定木によるモデリング」 にあったジニ不純度(ジニ係数)の計算を下記の JVM 言語で関数言語的に実装してみました。 Groovy 2.3 Scala 2.11 Java SE 8 Frege 3.21 今回のソースは http://github.com/fits/try_samp…
Gradle を使って既存の JAR ファイルへ AspectJ を適用してみました。 Gradle 1.12 AspectJ 1.8.0 Gradle 用の AspectJ プラグインとして gradle-aspectj というものがあるようですが、今回は AspectJ (aspectjtools) に含まれている Ant 用の AjcTask (i…
Gradle のビルドスクリプトにて mavenLocal() を使用した際、${user.home}/.m2/settings.xml ファイルに localRepository 設定があれば、これを反映してくれますが、現時点では任意の Maven 設定ファイル (settings.xml) の localRepository を反映する方…
Groovy 2.3 からトレイト機能が追加されています。 Groovy 2.3 ここで、トレイトと @Immutable アノテーションを共に使用した場合、現バージョン (2.3) では以下のような注意点がありました。 トレイトで定義したプロパティの値は変更可能 (immutable と…
以前、Java でマッピング・フィルタリング・畳み込みを試しましたが、 今回は Commons OGNL を使って OGNL 式によるマッピング・フィルタリング・畳み込みを Groovy で試してみました。 Commons-OGNL 4.0-SNAPSHOT サンプルソースは http://github.com/fits/…
前回 と 前々回に続き、今回は Dempsy を Groovy で分散実行してみます。 Dempsy 0.7.9 サンプルソースは http://github.com/fits/try_samples/tree/master/blog/20131208/ はじめに Dempsy を分散実行するには ZooKeeper が必要となりますので 「GroovyでZo…
前回に続き、Dempsy を Groovy で単独実行してみます。 今回は KeySource の設定有無でどのように挙動が変わるかを簡単に調べます。 サンプルソースは http://github.com/fits/try_samples/tree/master/blog/20131201/ KeySource 無しの場合 まず、前回サン…
以前、Groovy で Storm を使う にて Storm を Groovy から使ってみましたが、今回は同様のフレームワークである Dempsy を Groovy で単独実行してみました。 Dempsy 0.7.9 サンプルソースは http://github.com/fits/try_samples/tree/master/blog/20131130/ …
以前、Groovy で Apache ZooKeeper を使う にて ZooKeeper のクライアントを Groovy スクリプトで実装しましたが、今回は ZooKeeper のサーバーを Groovy で組み込み実行してみました。 Apache ZooKeeper 3.4.5 サンプルソースは http://github.com/fits/try…
Gradle を使って Vert.x を組み込み実行する単純な Web アプリケーションを zip 化してみました。 Gradle 1.8 サンプルソースは http://github.com/fits/try_samples/tree/master/blog/20131020/ zip 化のタスク定義 とりあえず、Gradle のビルド定義 build.…
Commons BeanUtils に Bean のプロパティをコピーする BeanUtils.copyProperties() というなかなか便利なメソッドがありますが、同名のメソッドが Spring にもあります。 (当然ながらパッケージ名は異なります) ちなみに Seasar2 にも BeanUtil.copyProper…
Gradle の Scala プラグインで -Xprint オプションを試してみました。 Gradle 1.7 -Xprint はコンパイル途中のコードを出力する Scala コンパイラのオプションで、 -Xprint:<フェーズ> のようにコンパイルフェーズを指定して使用します。 例えば -Xprint:typ…
R を使って XML の内容 (特定の要素のみ) を CSV ファイルへ出力してみました。 R 3.0.1 サンプルソースは http://github.com/fits/try_samples/tree/master/blog/20130922/ CSV 化の対象 XML は下記で、VALUE 要素の属性とテキストノード値を CSV 出力す…
Gradle で Java プラグインを使う場合、main のクラスファイルやリソースファイルの出力先は下記のようになっています。 Gradle 1.7 ファイル種類 出力先の設定 デフォルト値 クラスファイル sourceSets.main.output.classesDir build/classes/main リソース…
以前、Jetty, Grizzly, Netty(3.2.4), EM-WebSocket を使って WebSocket の簡単なサンプルを実装しましたが、今回は Netty 4.0.7 を使って同様の処理を実装してみました。 Netty 4.0.7 Final サンプルソースは http://github.com/fits/try_samples/tree/ma…
Vert.x を Groovy と Java で組み込み実行してみました。 Vert.x 2.0.1 ソースは http://github.com/fits/try_samples/tree/master/blog/20130825/ Groovy で組み込み実行 まずは Groovy で組み込み実行してみます。 通常の Vert.x スクリプトとの違いは下記…
前回 は Groovy スクリプトで Maven を実行してみましたが、今回は Gradle 上で実行してみる事にします。 Gradle 1.6 Maven 3.0.5 ソースは http://github.com/fits/try_samples/tree/master/blog/20130731_2/ 既存資産の pom.xml を Gradle に移行するのが…
Groovy スクリプト上で Maven を実行するには下記のような単純なスクリプトを用意するだけです。 Groovy 2.1.6 Maven 3.0.5 ソースは http://github.com/fits/try_samples/tree/master/blog/20130731/ mvn_run.groovy (Maven 実行スクリプト) @Grab('org.a…
はじめに 前回 に続き、今回は Maven と Gradle を使って cucumber-jvm を実行してみます。 フィーチャやステップ定義は前回と同じものをそのまま使いますが、common.groovy の @Grab('org.seleniumhq.selenium:selenium-java:2.33.0') は不要なのでコメント…
はじめに cucumber-jvm は BDD ツール Cucumber の Java 実装版です。 cucumber-jvm 様々な JVM 言語 (clojure、Groovy、Scala、JavaScript 等) を使ってステップ定義を実装できるので、今回は Groovy でステップ定義を実装、単体実行してみる事にします。…
はじめに Java SE 6 から実装されている Java Scripting API を使えば JavaScript を JVM 上で実行できます。そして、CoffeeScript は JavaScript にコンパイルできます。 と言う事で Java Scripting API を使って CoffeeScript を実行する Groovy スクリプ…
Functional Java の Iteratee を使って、以前試した Play2 の Iteratee (http://fits.hatenablog.com/entry/20130212/1360681996, http://fits.hatenablog.com/entry/20130216/1361027691) や RxJava (http://fits.hatenablog.com/entry/20130310/1362876…
下記のような文字をいくつかのプログラム言語の標準的な API で URL (URI) エンコードしてみたらどうなるか試してみました。 ; / ? : @ = & % $ - _ . + ! * ' " ( ) , { } | \ ^ ~ [ ]使用した言語は下記の通りです。 Groovy (Java API) C# (.NET Fram…
前回 (id:fits:20130224) のファイル処理と同様の処理を RxJava を使って実装してみました。今回作成したソースは http://github.com/fits/try_samples/tree/master/blog/20130310/ Groovy で実装 まずは Groovy で実装してみました。 Groovy 2.1.1 前回の…
Vert.x 1.3.1 Final で単純な WebSocket 処理を実装してみました。単純な JSON データを送受信するチャットサーバーを Vert.x で、動作確認のためのクライアントを HTML5 で実装する事にします。サンプルソースは http://github.com/fits/try_samples/tree/m…
個人的に REST API の実装では JAX-RS (Java)*1 や Sinatra (Ruby) あたりを使っていますが、今回は選択肢を増やす目的で下記のようなフレームワークを試してみました。 Vert.x (Java, Groovy, JavaScript, Ruby, Python) Gretty (Java, Groovy, Scal…
Java でコレクションのマッピング(map)・フィルタリング(filter)・畳み込み(foldLeft)のような処理を使いたいケースがありますが、今のところ標準で用意されていません。そこで、以下のようなライブラリを使って試してみました。 Functional Java 3.1 …
id:fits:20120912 にて Scalaz で実装したナイト移動の List モナド処理を Functional Java を用いて Groovy と Java SE 8 Early Access with Lambda Support(b56) で実装してみました。使用した環境は以下の通り。 Functional Java 3.1 Groovy 2.0.4 Open…
Markdown 形式の文字列を HTML 変換する処理を複数のプログラム言語で試してみました。処理としては、標準入力から UTF-8 の Markdown 形式の文字列を取得し HTML 変換した結果を標準出力へ UTF-8 で出力しています。ちなみに、Markdown 文字列は LOGGiX プ…
Vert.x のモジュールを Groovy で作成する方法をご紹介します。 Vert.x 1.1.0 サンプルソースは http://github.com/fits/try_samples/tree/master/blog/20120708/ モジュールの配置場所 モジュールは以下のディレクトリに配置できます。 Vert.x の mods ディ…