25th
May
2021
型レベル多項式の微分
以前書いた型レベル多項式をベースに型レベルに多項式の微分を実装する。
https://kazchimo.com/2021/05/19/dotty-typelevel-polynomial/
20th
May
2021
Polyfunctionでpartially applied typeを改善する
scala3で登場したpolyfunctionを用いてscala2系で実現されていたpartially applied typeを改善する。
18th
May
2021
Match Type
dottyの型システムに現れた強力な機能の一つにMatch Typeがある。
これによって2系のscalaだと信じられないくらい複雑なコードが必要だったものが簡潔になる。
17th
May
2021
コンパイル時オペレーション
dottyでは型に対してコンパイル時に行える操作が色々増えている。
特にリテラル型に当たるものは値レベルの操作と遜色無いものが用意されている。
コンパイル時オペレーションの中でもscala.compiletime.ops以下に当たるパッケージを見ていこう。
16th
May
2021
リテラル型(literal type)
scala3にはリテラル型がある。
実はだいぶ前からすでに存在していたのだが、そのサポートがより一層厚くなった。
リテラル型はTypeScriptによって広く一般に知れ渡り、その有用性が実証された。
例えばリテラル型を使用することでTypeScriptではSQLの出力にクエリから型を自動で付けたりできる。