JavaOne3日目です。結構本気の日ですね。

とりあえずメモ書きだけで大変なので、詳しくはあとで書く。
Enabling Java for Persistent Memory Hardware [CON7656]
頑張って9:30からのセッションに来ました。永続メモリをJavaで扱う話。Intelのセッションなので、3D XPointを前提にしている感じ。

最初はたぶん永続メモリの説明をしてた気配があるんだけど、見逃した。座った時にはライブラリの紹介をしていました。
https://github.com/pmem/pcj

PersistentObjectを継承して自分でsetter/getterを書いていく泥臭い感じですね。

ただ、panamaの仕組みでinterfaceでどうにかするみたいなことを言ってた気がする。

http://cr.openjdk.java.net/~jrose/panama/using-interfaces.html
あとは、メモリの区別について。トランザクションなども考える必要があります。

ガベージコレクションはリファレンスカウンタでやるという話だった。テラバイトを扱えるようにする想定なので、スキャンするのは現実的ではないですね。
8ヶ月くらい開発をしていて、年末には安定させたいということを言ってました。
RAMディスクでエミュレートで動かせるようです。
質問した人が「Tremendous Potential!」と叫んでいました。今回のJavaOneで一番未来だった気がする。
Coroutines on JVM with Kotlin [CON1269]
コールバックからfutureまでの仕組みを説明したあとで、コルーチンを使ったところの素敵さを。
メソッドにsuspendをつけてlanch{}で囲むという感じですね。読みやすい。

これはステートマシンにコンパイルされます。

Javaで書かれたFutureを返すライブラリなども対応ができます。

Let’s Write Our Own Chip-8 Interpreter! [CON3584]
なんか昔のチップのエミュレータを作ろうという話。
歴史とか説明してた。

エミュレータのデモを出して。

テトリスを動かして。

エミュレータはこんな感じでデザインするよ、と。

よくわかんないけど、楽しそうだった。
展示
なんか1時間の休みがあったので展示にも来てみた。
Questの着ぐるみ

そしてIoTビール!Javaで製造管理をしてるっぽい。

IPAとかスタウトとかホワイトとかすごく酸っぱいのとかありました。

OpenJ9: Under the Hood of the Next Open Source JVM [CON3573]
OpenJ9の話。
https://adoptopenjdk.net/releases.html
https://github.com/eclipse/openj9

ROMClassからRamClassにして、みたいな感じらしい。

そういったファイルがJVMで共有されることで、フットプリントを軽くしている、と。AoTと同じ方向性ですね。

ベンチマークは?と聞かれたとき、ベンチマークとってるけどフットプリントとアプリケーションのスループットがいいところなので、みたいに言ってました。
Developer Keynote [KEY7383]
こんな感じ。結構いっぱい。Oracle Open Worldの人たちもいるらしい。

ステファンさんとかSlackの人とか出てたけど、ようわからんかった。

けど、Developer Keynoteの割に開発者向けじゃないなということで、うどん食べに行った

MVC 1.0: Community Involvement Matters! [BOF3293]
MVC1.0の話。
https://www.mvc-spec.org/
@CsrfValidとかいうアノテーションは、なんか便利そう。

あと、Mavenのdependencyでozark-resteasyになってるところをozard-jerseyにしたりして実装を切り替えて、いろんな実装でちゃんと動くよ、というのを示してました。Spring MVCは なかったけど。

デモコードはこちらに
https://github.com/ivargrimstad/mvc-samples



















