uehaj's blog

Grな日々 - GroovyとかGrailsとかElmとかRustとかHaskellとかReactとかFregeとかJavaとか -

JJUG CCC 2013 Springに参加してきました #jjug #jjug_ccc

今日は朝早くから、西新宿でJJUG CCC 2013 Springに参加してきました。(まとめ) 久々の1日の勉強会で楽しかったです。あと都庁を間近かで見れてよかった。 ブログ書くまでが勉強会、という基本を新ためて学んだので、書きます。 基調講演-1 Javaのこれからを…

G*ワークショップZ May 2013 - Spockハンズオン5/17

G*ワークショップZ Spockハンズオンのおしらせ。Spockを試してみたいかたは是非どうぞ。 http://jggug.doorkeeper.jp/events/3872:title=http://jggug.doorkeeper.jp/events/3872 日時 2013/05/17 (金) 19:00 - 21:00 開催場所 NTTソフトウェア品川本社 品川…

オフラインどう書く第九回の問題をJava 8 Lambdaでやってみた。

オフラインどう書く第九回の問題をやってみた オフラインどう書く第九回の問題をCompileStatic指定してやってみた という記事を書きましたが、今回はJava 8 Lambda式を使って書きなおしてみました。 import java.util.*; import java.util.function.*; impor…

オフラインどう書く第九回の問題をCompileStatic指定してやってみた。

オフラインどう書く第九回の問題をやってみたという記事を書きましたが、今回はCompileStaticアノテーションを使って書きなおしてみました。 import groovy.transform.* @CompileStatic int ceil10(int n) { (Math.ceil(n/10) * 10) as Integer } @CompileSt…

てっとり早くGroovyでJava8のLambdaを使う

追記 http://groovy.codehaus.org/Groovy+2.3+release+notes#Groovy2.3releasenotes-OfficialsupportforrunningGroovyonJDK8groovy 2.3以降、Goovyクロージャはfunctinal interface(sum型)が要求される場所で使用される場合、自動的にそのインターフェースに…

RubyライクにGroovyを書く

誰得なエントリ、かつ「これはひどい」ネタ。まず、以下のようなコンパイラ設定ファイルを書いておき、例えば~/.groovy/config.groovyなどに保存しておきます。 import org.codehaus.groovy.control.* import org.codehaus.groovy.antlr.* import org.codeha…

オフラインどう書く第九回の問題をやってみた。

id:torazukaさんのところで紹介されていたオフラインどう書くの問題をやってみた。 問題はこちらです。 バス代 横へな 2013.4.6 http://nabetani.sakura.ne.jp/hena/ord9busfare/ def ceil10(n) { (Math.ceil(n/10) * 10) as Integer } def half(n) { ceil10…

JJUG CCC 2013 Springにて発表致します

5月11日に、「JJUG CCC 2013 Springにて発表致します。わたしは、Groovy2.Xの新機能を包括的に紹介する予定です。他にもさまざまに興味深いセッションがありますので、ご興味あるかたは、是非登録下さい。

Groovy基礎勉強会で発表してきました

@kyon_mmさんたちが企画した、Groovy基礎勉強会で発表してきました。 機会を頂きありがとうございました>kyonさん、スタッフの皆様、場所を提供頂いたオラクルのみなさん。「コンパイラ処理系としてのGroovyの中身」を覗いてみよう、というのが今回のテーマ…

G*Magazine Vol.6に寄稿しました

日本で唯一のGroovy/Grails関連技術専門オンラインマガジン「G*Magazine Vol6 に寄稿しました。 Groovy 臨機応変(第一回) 〜動中の静...Groovy 2.1.0の新機能 その1 〜 私のは時期的にはちょっと逸しておりますが、他の記事はみな読み応えありです。 相変ら…

動的型情報に基づく静的型チェックというアイデア(Groovy 2.1リリース記念)

Groovy 2.1がリリースされました。おめでとう! 「Groovy 2.1.0は凄い」で自力で調べた以上の情報がリリースノートには書いてあります。まあ、そうなるわな。これを記念して、こないだ作った静的型支援ツール「Staticalizer」を、Groovy 2.1.0でより機能強化…

初夢語り: Groovyの野望と未来を2.1.0に垣間見る #jggug

G*ワークショップ 2013新春SP #jggugにいってきました。報告はid:orange_cloverさんのこちらを。メインとして、@_y_u_さんによる、GG純度100%のとても濃いGGEXの参加報告がありました。興味深い数多くのセッション紹介があり、後でいくつかは元セッションを…

G*ワークショップ 2013新春SP #jggug

G*Workshopが今週末開催されます。 http://kokucheese.com/event/index/68561/いろいろと楽しい話が聞けると思いますので是非どうぞ。 私も、LTにて、Groovy 2.1.0の濃いところを話します。いや話したい。いや話せれば。がんばります。

3年間の進歩

過去のブログを見ていて、"10分でコーディング"という記事があったので、かつ内容を完全に忘れていたので、あらためてチャレンジ。問題はこちら。 def func(int n, String cards) { cards = cards.substring(0, cards.size() - cards.size() % n) def resu…

Groovy 2.1の初回βがリリースされました(翻訳)

A Groovy New Year!(挨拶) みなさまあけましておめでとうございます。今年もよろしくお願いします。ということで、去年の21 December, 2012 (2 weeks ago)に、Groovy 2.1の初回βがリリースされていましたが、Guillaume Laforge氏のブログエントリの翻訳をし…

プログラミングGROOVY別冊:第8章 Groovy 2.0の新機能]

今年のG*アドベントカレンダーも無事におわりましたね。なかなか濃い内容でした。最後の関谷さんの記事の末尾にありましたが書籍「プログラミングGroovy」の執筆チームからのクリスマスプレゼントとして、 プログラミングGROOVY別冊:第8章 Groovy 2.0の新…

ヘッドレスGrails

"昨日"の記事ではあんなことを書きましたが、単に「Grailsでバッチ処理ができるよ」と言う話では無いと私は思います。つまり、Grailsが、Webアプリに限定されない、アプリ開発のフレームワークになるということです。デスクトップGUIアプリの分野はGriffonに…

Grailsでバッチ処理を実行

Webアプリ機能は使用せずに、GORMやサービスなどのGrailsのすべての機能を使いたい場合があります。たとえばデータベースにデータをバッチ的にひたすらインポートするような処理です。GORMを使いたいですね。その目的のためにbatch-launcher-pluginというプ…

Staticalizer - G* Advent Calendar 2012-

今年もやってまいりました恒例行事「G* Advent Calendar 2012」その4日目ということで、私が作ったプログラム「Staticalizer」を紹介します。発音は「スタティカライザー」で二〜三回舌を噛む感じで発音します。これは、Groovy2.0で導入された静的Groovy機能…

QuartzプラグインでTriggerのスケジューリングタイミングを動的に変更する

GrailsのQuartzプラグインを使っている場合に、ジョブスケジューリングを動的に変更したいときがあります*1。一見、こちらにある「Dynamic Jobs Scheduling」にある方法で変更できそうにも思えますが、ジョブ名やトリガー名を与えることができないインターフ…

HowToPublisher

Grailsのハウツー文書を、Peter Ledbrookさんがまとめております。これはかなり参考になります。今回の本題は、このHOWTOの内容ではなくて、このHOWTOがどのようにHTMLとして作られているかです。調べると、github上のプロジェクトとして管理されています。…

静的リソース機能はGrails 2において中核的価値の一つである

タイトルは釣りっぽくもありますが、G*MagazineのVol.3とVol4にも紹介されているGrails Resoucesプラグインについて熱く語ってみます。 Grails ResouceプラグインはGrails 2.0からGrails本体に同梱される標準プラグインとなりました。つまり明示的にインスト…

Kickstart with Bootstrapプラグインがかっこいいぞ

GrailsにはKickstart with Bootstrapプラグインというのがあって、サイトの雛形として使える便利ものですが、実にかっちょ良い。 スキャッフォルドも手が加わっていて、Twitter Bootstrap対応になっています。 こういうテンプレートがいっぱいあると良いなあ…

G*Workshop「Groovy2.0の新機能」を発表してきました

10/26金曜日は、JGGUG G*Workshopでした。 五十嵐さんのJavaOne報告、杉浦さんのVert.xなど盛り沢山で、G*としては大変盛況でした。参加者各位および発表者の皆さまにおかれましては、ありがとうございました。 以下は@kimukou2628さんによるまとめです。あ…

GVM: Groovy enVironment Manager

GVM Toolというのがありますので入れてみました。Groovyを始めとするgroovy関連のツール・フレームワーク類をインストールして、複数のバージョンを切り替えて使用したりするためのものです。RubyのRVM相当のものとのこと。 % curl -s get.gvmtool.net | bas…

はてなブログに移行しました

はてなダイアリーからはてなブログに移行しました。 デザインとかはおいおいに直していきます。 今後ともよろしくお願いします。

[groovy][grails] groovy,grailsのロードマップ(追記あり)

この記事の一部、今後のロードマップに関わるところを抜粋してみました。 InfoWorld Groovyは今後どのように改良していくんですか? Laforge Groovy 2.1では、invokedynamicバイトコード命令サポートを、この言語の動的側面すべてについての性能改善のための…

G*Workshop in 福岡(Groovy 2.xの新機能)

もう1週間たっちゃいましたが、先週はG*Workshop初の九州開催ということで、福岡博多にて開催してまいりました。@orange_cloverさんによるまとめ(ありがとうございます!)はこちら。 個人的には ラーメン旨い 替え玉を頼まないと負けになる 九州の人はみな熱…

[jggug][groovy][grails] この夏は福岡@九州のGroovy/Grailsが熱い!

Groovy 2.0の新機能について、以下で話します。G*ワークショップ in 福岡#jggug G*ワークショップがついに福岡に進出します! G*ワークショップは、日本Grails/Groovyユーザーグループ(JGGUG)が主催する、Groovy/Grailsを中心としたG*テクノロジーの勉強会で…

Groovy 2.0でindyを使う

Java 7では、Java VM上での動的言語の実行を効率化することを目的とした一連の機能拡張(JSR 292: Supporting Dynamically Typed Languages on the Java Platform,日本語解説)がなされました。具体的にはたとえば、Java Bytecode命令の1つにinvokedynamicとい…