Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kotlin/JS の仕組み / How KotlinJS works

Yuku Kotani
August 24, 2019

Kotlin/JS の仕組み / How KotlinJS works

Kotlin Fest 2019の発表資料

Yuku Kotani

August 24, 2019
Tweet

More Decks by Yuku Kotani

Other Decks in Technology

Transcript

  1. 自己紹介 - 名前: 小谷 優空 (Yuku Kotani) - GitHub: @Monchi

    - Twitter: @MonchiFC - 所属: Ubie, Everforth, 筑波大学情報科学類 - Kontributor 2
  2. コンパイルの流れ 6 CLI kotlin-gradle-plugin JVM JavaScript Native(LLVM) AST (PSI) Kotlin

    コード コンパイラ 出力 参照 コンパイル先に関わらず Kotlinコードとして 参照、操作できる! IR (中間表現)
  3. Dead Code Elimination - 単純なTodoMVCアプリケーションをDCE 1922KB -> 416KB - minifyすると更に

    198KB に - gzipすると更に 45KB に - webpackのTree Shakingも重ねがけでもっと減らせそう 11
  4. 型変換 - 型付き配列 - 型に応じて [], Int8Array, Int16Array... に変換 -

    Long(64bit整数) - JavaScriptは53bit整数までしか扱えない - 内部的にエミュレートするKotlin.Longクラスに変換 13