fsprojects / FSharp.Data

F# Data: Library for Data Access
https://fsprojects.github.io/FSharp.Data
Other
815 stars 287 forks source link

This is awesome! #1

Closed ovatsus closed 11 years ago

ovatsus commented 11 years ago

I love the name FSharp.Data. In FSharpx we have the json parser in FSharpx.Core and the json typeprovider in FSharpx.TypeProviders.Documents, effectively grouping stuff by the implementation type. For newcomers having FSharp.Data on nuget is much easier to find, and it's a nice concept. An the cherry on top is the documentation you've made. Very nice!

If @forki and the rest of the fsharpx team agrees, I would suggest the following:

FSharpx is great as a holder of general purpose extensions to F#, but when there's a good group of functionality that makes sense to hold together, it makes sense to split it. We're also discussing there moving the DataStructures to a separate package.

I don't have much free time this weekend but I can try to do a pull request with the merging if you all agree

tpetricek commented 11 years ago

Thanks for the support!

As you say, I'm trying to have something simple that newcomers can easily find & get and (perhaps most importantly) that comes with a decent documentation and samples. I'll write more about this, but the docs are generated from samples/*.fsx almost automatically :-).

I do not necessarily see this as a replacement for document type providers in fsharpx. The versions in fsharpx are more powerful (they allow editting and @forki has been doing some interesting work on Zipper JSON), while I tried to implement, say, 80% of the most important features.

So, I think it is perfectly fine if the providers also exist in fsharpx and have more features (but they could share the same - fairly reusable - structure inference code) or if fsharpx has additional data manipulation features. In some way, fsharpx is the best playground for creating mature features that can be later incorporated here.

Move Freebase type provider from fsharpx into here also, as it makes sense to have both wordBank and freebase together

That would be great! If you can help here, that would be fantastic.

Moving this into github/fsharp organization

I'm definitely up for that. I just wanted to get more community involved before we do this.

Add support for portable profile

If you can help here, that would be great! I'm not entirely sure what is needed. (I would be also quite happy to use FAKE for building of the NuGet packages etc. but my FAKE knowledge is limited.)

ovatsus commented 11 years ago

I think we can have the complete json functionality from fsharpx while still keeping it simple, we just need to hide the extra stuff by default. Very curious about how you generated the docs :) It would be great to have the same kind of docs for the rest of FSharpx. If we manage to get these kind of docs to FSharpx, and have a good site with the documentation of the several parts, we could eventually rename this FSharpx.Data and still include it in the FSharpx repository, it would still be easily found by searching for Data in NuGet. We should really think how to make all of FSharpx this clean, maybe taking @jackfoxy idea for a .Sandbox package and apply it not just for the DataStructures but for everything. That's a lot of great stuff in FSharpx, but it really needs to be documented and exposed in a simple manner to the potential users

jackfoxy commented 11 years ago

@tpetricek +1 for your docs. FSharpx would be greatly enhanced with documentation like this.

tpetricek commented 11 years ago

The only thing left undone is moving this to the fsharp organization. Thanks for all the help!!

jackfoxy commented 11 years ago

This is awesome! I'm using the Json type provider and parser in the project I am working on now which (and I hope I do not jinx this) may be my first paying F# project. Yes, this project belongs in the fsharp organization.