3781f49ea2c76d6ecf0c6cda46096d49

iOSDC2018に登壇しますCreated on 2018-08-31 by omochimetaru

    iOSDC2018に登壇します。
    9/2(日)に「Swiftのジェネリクスはどうやって動いているのかコンパイラのソースから探る」というタイトルで発表します。
    https://fortee.jp/iosdc-japan-2018/proposal/3d60b2ae-5841-4f60-8dd7-830377dc110e

    Swiftは静的型付けによって、
    コンパイル時に型が決定する言語ですが、
    ジェネリックパラメータについては実行に来る型がコンパイル時にはわかりません。
    それに、値型にも対応しています。
    値型にはメタ情報が無いのにどうしてそんなことができるのでしょうか。
    例えばJavaであれば、intなどの値型はジェネリックパラメータには使えず、
    代わりにIntegerというクラスを使わなければなりませんよね。
    発表では、それを実現している仕組みを解説します。

    実際の発表に向けた準備の流れでいうと、
    ここ最近はSwiftコンパイラのIRGenのコードを読んでいて、
    その中でジェネリクス周りは面白そうだったのでフォーカスしていきました。
    そうして得られた知見をまとめたものになります。

    発表、登壇の動機としては、
    第一には、ジェネリクスが動いている仕組みを知って、
    面白いと思ったので、それを共有したいという事、
    第二には、Swiftコンパイラに興味を持つ人を増やしたい、
    その話題について会話できる知り合いを増やしたい、
    という事の2軸があります。

    アブストラクトは前述のようになっていますが、
    動機は上記のように2軸あるので、
    発表の流れにおいては、
    コンパイラを学ぶノウハウについても
    同時に伝えたいと思っていて、
    その両輪で展開します。

    当日はぜひ聴講に来てくれると嬉しいです。

    最後にスライドを1枚だけ紹介します。
    終盤の最も盛り上がる(?)ところから。
    image