← Back to context

Comment by akdor1154

4 years ago

Looks really nice, i've been scribbling away in a little notebook all the things i would do in "akdor's dream sql", and what you have here hits pretty much exactly.

Wondering about generic use of `let` - you have let for col defns, but `func` for functions and a TODO for tables/CTEs - could/should `let` do the lot? (Like another commenter posted, this is how MS's M language, used in PowerQuery in PowerBI and Excel works). Could enable an escape from point-free for entire queries if taken to extreme generality, not sure if that's a good thing, maybe it could be?

Bikeshedding: even with some OCaml/F# experience, i find `f x y` harder to read than `f(x, y)`.

Thanks!

At the moment `let` is used to add a column as part of an existing pipeline. [1]

`func` is the start of new expressions / pipelines. And I just added a proposal for `table = `, which would be the same.

Does that make sense? Very open to more feedback...

[1] I just added `let` based on feedback here, it's better than it was, but not perfect, as it can be confused for a new pipeline given its use in other langs.