uehaj's blog

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

scala

実装から学ぶ型クラス…Groovyで型クラスを実現することを例にして

これは2014年のG*アドベントカレンダーの第23日目の記事のつもりでしたが、12時すぎてしまいましたorz。 HaskellやScalaやRustには型クラスという言語機能があり、個人的感想として、理解が難しかったものの一つです。いわく、インターフェースのようなもの…

オブジェクト指向だけじゃない開発宣言

Manifesto for Not Only Object-Oriented Development、オブジェクト指向だけじゃない開発宣言、というのが出てましたのでごにょと訳してみました*1。 オブジェクト指向だけじゃない開発宣言私たちは、ソフトウェア開発の実践 あるいは実践を手助けをする活…

Groovy 2.3のtraitをもうちょっと調べてみるついでにScalaのtraitを理解する

(訂正2014/4/17)以下の記事ではGroovy 2.3のtaritはスタッカブルには使えない、と書いておりますが、以下によれば次のベータ(Groovy 2.3-beta-3かな)ではスタッカブルトレイトが利用可能になるようです。 次βでGroovy 2.3のtraitはスタッカブルになるようで…

Groovy 2.3.0-betaが出たのでtraitを触ってみたメモ

Groovy 2.3.0-beta-1とbeta-2が出たので新機能traitをかるく触ってみました。注意! 以下は現時点で2.3.0-beta-1と2の振舞いとドキュメントを調べた限りの情報です。正式リリースに向けて変更される可能性があります。 関連記事 Introduce Groovy 2.3 trait G…

Java VM上の言語の覇者を決める(但しJava以外)スクリプトボウルの履歴

米国開催のJavaOneカンファレンスで恒例の人気セッションとなっている「スクリプト・ボウル」というのがあります。Java VM上で動作する言語同士のガチ勝負で、コード例とか、技術力とかいろいろな側面からパネルセッションでバトルして、その年勝者を決める…

JavaOne 2012 Tokyo/JVM言語BOF

JavaOne Tokyoに参加しています。 表記のBOFにはスピーカーの一人として参加致しました。資料はこちら。 Java One 2012 Tokyo JVM Lang. BOF(Groovy) View more presentations from Junji Uehara 直前の暴風雨で、予定していた懇親会が流れたせいで(?)、慣れ…

GroovyServの小技シリーズ2 scalacを高速化する

つい昨日0.4がリリースされたGroovyServですが、相当バグフィックス入ってるのでお薦めです。GroovyServはGroovyスクリプトの起動を高速化するものですが、Groovyから呼び出すものはGroovyに限りません。つまりJVM上で動くものならなんでも起動の高速化が理…

DCIアーキテクチャについて語ってみるよ

Trygve Reenskaug氏とJames O. Coplien氏らが提唱する「DCIアーキテクチャ」について、id:digitalsoulさんが論文を翻訳してくださり、またその解説とサンプル実装(groovy, scala)を示してくださっており、読んでみたところ、大変興味深いので理解した限りを…

scalaはGroovyと全く競合しない

このところ思ってたのですが、ScalaとGroovyは競合しませんね。まったくしない。適用領域に関して、GroovyのスイートスポットとScalaのスイートスポットに共通部分は、ほぼ全く全然無いと思います。Scalaは、JVM上で動作しはしますが、Javaと完全なる別言語…

GroovyでMaybe Monadを書いてみた。

「モナドなんて難解なものを含んだ言語は業務で使えねー!!」とScalaの悪口を言おうとして調べてたらモナドが何となく分かった気がしたのでMaybe Monadをgroovyで書いてみました。面白いわこれはw。ただ、HaskellもScalaもちょっと読んだぐらいの経験しかな…