ToyQL: Braindump #2
空のプロジェクトをつくった。次はとりあえず何か動くという状態にしたい。最小限の SQL として
- SELECT で複数のカラムを指定, AS による aliasing あり
- FROM で単一のテーブルを指定
- WHERE 以降はナシ
が動くようにする。WHERE に進むには式を評価する必要があるのであとまわし。AST は作る。実行計画やデータフローみたいのは不要。スキャンして row を生成し, それを rename し, 最終的な column を accumulate する、みたいなことをするだけだから。最初は aliasing ナシでもいいキハするけれど、式の評価とかをする上でそのレイヤは必要そうなのでいれてみる。すごい簡単だが、それでも AST など必要な足場のために多少の頑張りが必要。
あと一応 API を考えないといけない。まずはあまりカッコつけずべたっとしたものにしておく。