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.

Reply via email to