next release: review tests to copy from hssqlppp 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 grammar for cube and rollup). SELECT EmpId, Yr, SUM(Sales) AS Sales FROM Sales GROUP BY GROUPING SETS((EmpId, Yr), (EmpId), ()) SELECT EmpId, Yr, SUM(Sales) AS Sales FROM Sales GROUP BY GROUPING SETS((EmpId, Yr), (EmpId)) { (grouping_column[, ...]) | ROLLUP (grouping_column[, ...]) | CUBE (grouping_column[, ...]) | GROUPING SETS (grouping_set_list) | ( ) | grouping_set, grouping_set_list } 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 have to do fixity for this to work much more table reference tests, for joins and aliases etc. review internal sql collection for more syntax/tests review syntax to replace maybe and bool with better ctors ---- 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: more operators sql server top syntax named windows extended string literals, escapes and other flavours (like pg and oracle custom delimiters) 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 proper character sets for identifiers, escapes, etc. 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?