Swiftのジェネリクスはどうやって動いているのかコンパイラのソースから探る by omochimetaru

iOSDC Japan 2018
採択
2018/09/02 11:20〜
Track A
iOSエンジニアに聞いて欲しいトーク(30分)

Swiftのジェネリクスはどうやって動いているのかコンパイラのソースから探る

omochimetaru omochimetaru omochimetaru

Swiftにはジェネリクスという言語機能があり、
利用時の型が不確定なコードを書くことできます。
Swiftには厳密な型システムや、余計なメタ情報を持たない値型などがあるのに、
どのようにしてジェネリクスを動作させているのでしょうか。
このトークではそれを実現する言語機能である
witness tableについて、
コンパイラのソースコードを追いながら解説します。