I'm finally finishing up a major overhaul of Plisqin, my alternative to SQL. I don't think I will consider it "stable" just yet, but it is getting much closer. The biggest new feature is a type system that prevents the three-valued logic mistakes that are too easy to make in SQL. I also hope to write better documentation this time around thanks to a better example database. (I've ported the AdventureWorks schema and some of the data to SQLite.)
I also think I can add basic Typed Racket support pretty easily. If I know the names and types of each column that a query will produce, I can expose this to Typed Racket as, for example: (: get-users (-> DbConnection (Sequenceof (Object (field [first-name String] [last-name String] [age Number]))))) Will this actually be useful? I'm not sure, but at this point it doesn't seem like much more work than the untyped version. I'd welcome advice here. Is "fields vs methods" worth thinking about? Or maybe Object isn't the best type to use. But Object seems like the best way to get structural-ish typing, which is probably better than (Sequenceof get-users-result) or something like that. On Sunday, April 19, 2020 at 12:04:18 PM UTC-5, Stephen De Gabrielle wrote: > > New week, new Racket! What are you folks up to? > > Answer here or on > - https://racket.slack.com/ (Sign up at > https://racket-slack.herokuapp.com/ ) > - `#racket` IRC on freenode.net https://botbot.me/freenode/racket/ > - Tweet @racketlang on Twitter > - Racket discord https://discord.gg/6Zq8sH5 > - [r/racket](https://www.reddit.com/r/Racket) > > Don’t forget to sign up for, and contribute to Racket News at > https://racket-news.com/ AND submit your links to Racket Stories > https://racket-stories.com/ > > Kind regards, > > Stephen > > > > -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/c6888141-abfd-4073-ac3c-24f20a7dcacd%40googlegroups.com.