next release:
lateral since it is easy. I think it is effectively just a prefix
   operator on tablerefs (can appear like this from lateral a, from
   lateral a,b, from a, lateral b, from a natural join lateral b
   (although all of these are sematically garbage, this is the
   valid syntax)
more dots: implement as dot operator

row ctor: row(a,b) is fine, but also when there is 2 or more elements,
   the word row can be omitted: (a,b)
more symbolic operators, array access a[5]? don't think this is
   standard sql, if not, leave for now. There is something about
   arrays in sql:2008

window frames and named windows


review tests to copy from hssqlppp

order by nulls first/last
extend case
group by extensions. Question: some of the syntax can be represented
   by app and row ctor, should this be reused or new syntax created
   (the standard has special syntax for cube and rollup).
table, values
collate? -> postfix operator which binds very tightly:
a < 'foo' collate 'C'
->
Op "<" [Iden "a", SpecialOp "collate" [StringLit 'foo', StringLit
   'C']]
  also postfix in order by:
select a from t order by a collate 'C': add to order by syntax, one
   collation per column
function table reference
much more table reference tests, for joins and aliases etc.
ansi standard versions of limit and offset

OFFSET start { ROW | ROWS }
FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } ONLY
-> + fix the abstract syntax to match this instead of postgres
(keep the postgres syntax version parser)
in the postgresql docs, the start and count must be in parens unless
   they are a single integer

+ sql server top syntax

quoted identifiers and proper character sets for identifiers

run through postgres docs and add example sql as tests
review internal sql collection for more syntax/tests
all ansi sql operators

escapes in string literals


----

add to website: pretty printed tpch, maybe other queries as
   demonstration
demo: convert tpch to sql server syntax exe processor

----

dialect framework
try to implement fixity without the hse hack
position annotation?
review abstract syntax (e.g. combine App with SpecialOp?)


----

Later general tasks:

run through other manuals for example queries and features: sql in a
   nutshell, sql guide, sql reference guide, sql standard, sql server
   manual, oracle manual, teradata manual + re-through postgresql
   manual and make notes in each case of all syntax and which isn't
   currently supported also.

check the order of exports, imports and functions/cases in the files
fix up the import namespaces/explicit names nicely

do some tests for parse errors?

left factor parsing code in remaining places

quasi quotes?

= sql support

placeholder/positional arg

full number literals -> other bases?
apply, pivot
within group aggregate syntax

try to do full review of sql2003 query syntax

make ansi dialect which only supports ansi sql. Maybe there is a use
   for a separate SQL 92, 99 and 2003 dialects?

other dialect targets:
postgres
oracle
teradata
ms sql server
mysql?
db2?

maybe later: other dml
  insert, update, delete, truncate, merge + set, show?