Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add async loading #18

Open
tpetricek opened this issue Jan 21, 2013 · 5 comments
Open

Add async loading #18

tpetricek opened this issue Jan 21, 2013 · 5 comments

Comments

@tpetricek
Copy link
Member

When reading CSV, XML or JSON from the web, it should be possible to read the data asynchronously.

  • For XML and JSON, we read the entire file before processing, so this should be just a simple AsyncLoad method.
  • For CSV, it would be nice to use some sort of async enumerator so that we can read the data asynchronously on demand.
@nrolland
Copy link

so much material for code sprint ! :)

@ovatsus
Copy link

ovatsus commented Jan 25, 2013

We could use your AsyncSeq for CSV

@tpetricek
Copy link
Member Author

Yep, AsyncSeq<Row> would be the right pattern, but then we would add a dependence to some other project (which is a bit unfortunate - I think depending on the entire fsharpx would be a bit too much). So I think we could use something - not sure what - that is easy to turn into AsyncSeq<Row> (for now).

(And perhaps - for the future - think about some FSharp.CoreEx (bad name, obviously) project that would contain just the absolutely necessary interfaces that are shared by multiple packages?)

@ovatsus
Copy link

ovatsus commented Jan 26, 2013

Why do think a dependency on FSharpx.Core is so bad? It's not too big, and NuGet takes care of the dependencies

@ovatsus
Copy link

ovatsus commented Apr 6, 2018

Reopening this, since the landscape has changed a bit. AsyncSeq is now a standalone F# package, so maybe having FSharp.Data depend on that wouldn't be so bad? The CsvProvider would really benefit, since right the async methods are not really async. On one hand the extra dependency is always good to avoid, but on the other hand, it would fit very nicely, would help get AsyncSeq a bit more mainstream, and since we're releasing a new major version with 3.0, would be a good time to do it if we want to.

@tpetricek, @dsyme , @colinbull , @baronfel what do you think?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants