4 ms·
Disclaimer: I am not a Lisp hacker. I prefer to ship. The syntax for this query language is beautiful. Really exceptional. Lisp has such an excellent way of re
by debacle 12y ago
Disclaimer: I am not a Lisp hacker. I prefer to ship.
The syntax for this query language is beautiful. Really exceptional. Lisp has such an excellent way of representing deterministic programming that no other language has really been able to match.
I know this doesn't scale right now, but I don't see any reason why it couldn't at some point. The query syntax is much more digestible than SQL.
- ajuc 12y agoI would still prefer (select :/name, :/salary from :employees where :/division = division) I don't think these additional parentheneses add enough value to justify people learning another reinvention of sql. It should be possible to make it accept regular sql syntax, just with added /column for table columns and referencing variables from inside. Anyway, nice work.
- pareidolia 12y agoBecause the tree structure of the parenthesized expression matches the structure of the query, manipulation of this tree using editor support such as Paredit is useful.
- wukix 12y agoNon-lispers don't always realize that more parens can actually be a feature :)
- debacle 12y agoLispers don't always realize that too many parens/brackets is a code smell in almost any other language. It makes people unnecessarily wary of (stuff (like 'this)).
- nickik 12y agoIts().just().the().same().for().us().lispers().abstractFactoryFactory()
- collyw 12y agoI dunno. If I have a "complex" condition with more than two parts to it, I prefer to be liberal with parenthesis, rather than expect any future maintainer to remember all the operator precedence rules.
- wukix 12y agoLambdaLite creator here. I just wanted to point out, in case it is not clear, that LambdaLite doesn't really introduce a new query language per se. The syntax is just "write any Lisp code you want" because actual Lisp closures are used where expressiveness is needed. Hopefully, this means the learning overhead is actually less: instead of needing to know both Lisp and SQL, you only need to know Lisp. (Disclaimer: obviously there is still an API to learn, but that would be the case with any SQL client library too.)
- codygman 12y ago> I am not a Lisp hacker. I prefer to ship. You make the two sound mutually exclusive.