uehaj's blog

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

2009-09-01から1ヶ月間の記事一覧

JGGUG CCC 2009 Fall のBOFで話します

もう来週になってしまいましたが、JJUG CCCのBOFの枠をいただきましたので、主にGroovy 1.6/1.7まわりの機能などについて紹介したいと思います。AST変換(AST Transformation)開発の可能性と苦労譚なども話してみたいと思っています。よろしければどうぞです…

Groovyのイメージキャラクター欲しい

最近飲み会でみんなにお願いしているのですが、Jungle Javaのbarakiさんとも機会がありまして、お伝えしたところ、サイトでご周知いただきました。たいへんありがとうございます。これはいわゆる「たん」の話です。「たん」が存在して技術は初めて普及した事…

パワーアサート(Power Assert)の真の意味

つい先ほど、Spockの記事をみてましたところPower Assertのことが書いてありました。ご存知のように、Groovy 1.7の「Power Assert機能」は、Spockの機能から由来しています。私としては結構お気に入りの機能です。Power Assertを気軽に体験するにはこちらと…

Groovy勘所ガイド

昨日、JGGUG名古屋支部主催「第3回 Grails/Groovy勉強会 in 名古屋」でお話しをさせていただきました。JGGUG名古屋の皆さま、参加者の皆様、場所を提供いただいたニューキャストの皆様、機会をいただき大変ありがとうございました。懇親会ちょっとしか出られ…

findAllとgrepの違い

自分が曖昧に理解していたのでメモ。 findAllとgrepの違い Collection#findAll(Closure clos) 引数で指定した1引数のクロージャclosが真を返すもののコレクションを返す。たとえばclos.call(a)==true,clos.call(b)==false,clos.call(c)==trueのとき、[a,b,c]…

Groovy API,GDKなど用のFirefox検索エンジン追加

Groovyなど用のFirefox用検索エンジンを追加する方法を紹介します。内容はたいしたことではなくて、やってることはGoogle検索結果をsite:でGroovyのサイトやAPIに絞ってるだけです。Greasemonkeyなど不要。設定方法は以下から「view row」のリンクを右クリッ…

プログラミング言語Fan

fan

James Strachan氏のブログ記事へのコメントを見ていて知ったのですが、Fanというプログラミング言語があるそうな。http://www.fandev.org/「Productivity of Ruby, Performance of Java」と書いてありますが、JVMで動いて、.NETでも動いて、JavaScriptにコン…

どう書く.orgをGroovy好きな方、みんなで解きませんか

このところ、どう書く.orgの課題をGroovyでとく、というのを暇を作ってやっております。今回、やっとGroovyのカバレッジ率がJavaScriptのカバレッジ率(76.4%)に並びましたのでご報告。どう書くは、普通は使わない機能を使ったりしないと解けないことがあるの…

どう書く.org課題「分散関数呼び出し 」「不動点関数」「割り算の筆算」

3つやってみました。 分散関数呼び出しはJmxで。GroovyとJMXは親和性高いんですよね。ただ、引数を複数とるメソッドを呼び出せなかった。誰か原因を教えて欲しいです。 不動点関数はいわゆるyコンビネータだかzコンビネータだか言うものです。意味を良く理解…

AST変換について

GroovyのAST変換は良く知られていないかもしれませんし、何だそらいらねと思っている人も多いと思います。AST変換についてつらつらと最近思っているのは、応用面から言うと、これは「Groovyなアノテーション」なのだなと。もちろん、アノテーションを介在し…

どう書く.org課題「 ローカル変数の一覧を取得」

どう書くorg課題「ローカル変数の一覧を取得」を書いてみました。対象を今回クロージャに限定しています。ふつー、JVM上で動く言語としてのJavaでもGroovyでも、ローカル変数名はコンパイル後には消え去っているので、こういうことはできません。なので、今…

どう書く.org課題「BFコンパイラー」

どう書く.org課題「BFコンパイラー」は、その名をはばかるBrainf*ckという言語処理系(Wikipedia)のGroovyでの実装です。この課題のポイントはインタプリタではなく、コンパイラということで、まずターゲット言語(この場合Groovy)での実行可能表現を考えな…