読者です 読者をやめる 読者になる 読者になる

あるふぁべっとがおおすぎる

ITネタとか勉強会とか色々

渋谷JVM | Advent Calendar 2015

Java Groovy Scala Clojure 勉強会

IT系の勉強会行ってきた Advent Calendar 2015 - Adventarの13日目!

半分超えて残り12回!

渋谷JVM

d-cube.connpass.com

Scalaセッション

竹添さん(@takezoen)の経歴のお話。かなり面白かった。

  • 2002年 common LispPaul Grahamハッカーと画家を読む
    普通の人より上を行け!
  • 貧困から脱出するためにLisp
    マクロすごい!プログラムを生み出すプログラム!→でも稼げない予感
  • 2006年 Haskellちょい話題に(Monadiusの影響)
    コンパイルが通ればバグはないと言われる→人類がニュータイプにならないとダメだ
  • 2010年 Clojure
    JVMで動くLisp!これは来る!括弧も少ない!
    →コネ━(。A。)━ii
  • 2011年 Scala
    小田好先生、学術的言語ではなく実用的言語を目指す言語
    オブジェクト指向+関数型、そこまで敷居が高くない、バランス感覚が良い
  • HaskellよりはScalaの方が読みやすい気がする
  • メソッド内なら手続き型でも書ける
  • 2012年 コンパイル遅い、IDEがクソ重い、Play2がバグってる…
    →最近のScala!AkkaやSparkなど機能を活かした物の登場

Clojureセッション

  • Immutable時代のプログラミング言語
    Lispであること、関数型プログラミング
  • Conceptualなところがおもしろい
  • Simple Made Easy
  • Alan J. Perils 10のデータ構造それぞれに 10の関数操作があるよりも、 1つのデータ構造に 100の関数操作がある方がよい
  • すべてがImmutable。コレクションに対する破壊的操作が不可能

Groovyセッション

  • 文法はJavaのほぼ上位互換
  • Groovy2.0から静的型付け可能
  • 内部的にはJavaバイトコードに常にコンパイルされて実行
  • GDK:Groovyの為に拡張されたJavaAPI
  • Javaを置き換えない
    併用、共存、補完が存在意義、別記法で読み込ませる
  • GroovyはカスタムDSL作りやすい
  • 新しい言語というよりはJava開発者の能力を高めるツール

Javaセッション

  • Java嫌いな俺カッコいいみたいな風潮があるw
  • SE5〜7まで10年近くあんま変わってない
    →それがゆえに停滞してしまった。
  • SUNのときよりOracleの方が淡々とマネージメントされてて良い
    →SUNの時は新機能次第で株価が大きく変わり危うかった
  • InvokeDynamicやLambda等以前よりも改善はされてきている
  • 記述が若干アレなのある…。
    StreamとIntStream、OptionalとOptionalInt

 

全体的に非常に面白かったです!

スピーカーが豪華でゆるい感じで発表してもらえればどんな話題でも楽しくなるんや!