こんにちは。DevOps芸人と化して久しいAndyです。 2020年の秋にTypeScript 4.1へTemplate Literal Typesが導入され、そのインパクトに俄かに一部の界隈がザワついたのは記憶に新しいかと思います。 今回は型プログラミングの可能性を大いに押し広げたTemplate Literal Typesを用いてSQL文を型レベルで解析し、その実行結果を型情報として導出するためのsqlptureというライブラリを作ったので紹介します。 Embedded content: https://github.com/andoshin11/sqlpture SQLの実行/検証対象はPostgreSQL v13です。 tl;dr SQL文を型レベルで解析・評価して返り値型を取得できるmini interpreterを作ったよ 型レベルのSQL validatorも作ってるよ 実際
![TypeScriptで世界一型安全な型レベルSQL Interpreterを作っている話](https://cdn-ak-scissors.b.st-hatena.com/image/square/0d365ef039c9e6faa312f8fe5ae0ae67f4d17b61/height=288;version=1;width=512/https%3A%2F%2Fimages.ctfassets.net%2F2p1otbbee5vt%2F2w2SYgDm3UBJExXxKaK3g7%2Fc27fe9e4db00434a1f3638d17583c779%2Ftypescript-sql-interpretor.png)