RethinkDb.Driver
RethinkDb.Driver copied to clipboard
F-Sharp
Hi there and thanks a lot for doing this driver ^-^
I think it is easy to get F# running on it since its imperative design is very similar to that one of C#. It is practically the same syntax with indentation for local scope and some other small differences.
I appreciate a native environment for my database code.
It is very easy for me to read whitespace sensitive code and I often struggle with curly brackets all over the place, which is also one reason why I prefer this language.
And hey: F-Sharp provides record types and other stuff which fits fine into a database. ^-^
You can find support by people of the F# community.
Thanks a lot for your dream work and happy hacking. 😉
Hi @ShalokShalom ,
Thank you for the compliments. It really makes me really happy to see developers using the software we've built together. I don't want to take all the credit; I've had a lot of help from the RethinkDB team and the community to make it what it is today.
If you're looking for better F# support with RethinkDB you might want to check out and help @danieljsummers with his RethinkDb.Driver.FSharp project here:
https://github.com/danieljsummers/RethinkDb.Driver.FSharp
IIRC, it's an effort to overlay some idiomatic F# elements on top of the C# RethinkDB driver. Daniel has some really great tutorials on how to use RethinkDB with F# and C# here:
https://danieljsummers.github.io/FromObjectsToFunctions/
Also, I don't work with F# much and I only know enough to write half-way decent F# FAKE build scripts. So, you'll have to let me know what exactly is missing in the C# driver and how we can help improve F# integration.
If there is anything I can do in the C# driver to make F# integration better without major compromises to the C# driver's core design I'd be more than happy to make changes.
I'm also open to merging the RethinkDb.Driver.FSharp project into this repository and giving @danieljsummers write access to develop the F# integrations if you both find it easier to maintain and work on. You can leverage the a) build system, b) benefits of project source reference, c) coordinated maintenance & release cycles, and d) the existing code-generation for AST term generation.
Whatever you all feel is most appropriate for F#. I think the only thing I'd ask is that we have a discussion before any major changes to the C# driver's core design.
Thanks, Brian
:walking_man: :walking_woman: Missing Persons - Walking in L.A.