question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Making TaskResult and JobResult libraries

See original GitHub issue

It was requested via twitter to have a TaskResult added to this library. I do believe this would be a good idea, as I also work with task heavy CE workloads and rely on the Result type.

As mentioned in that tweet thread, since the main library wants to be Fable compatible, it would have to be its own separate library. FsToolkit.ErrorHandling.Tasks (something something naming is hard).

In addition to this, I use Hopac quite a bit and have authored the Chessie.Hopac. Similar to the above, it would be its own library FsToolkit.ErrorHandling.Hopac.

I’d be willing to implement both of these libraries if this proposal makes sense.

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:9 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
TheAngryByrdcommented, Apr 12, 2019

Well some people’s definition of composable implies laziness/cold so you’re dealing with slightly different semantics about how your FuturesObject will behave. But really it’s not less “composable” in the strict sense of the word.

1reaction
TheAngryByrdcommented, Apr 12, 2019

@demystifyfp I think keeping it in this repository makes sense. Easier for the dependent libraries to adjust to changes.

@cmeeren Yeah 99% of Tasks are started or “hot” by the time you get a reference to them, so yes they are less composable. Also there’s other downsides like they’re not tail call optimized. The main benefit of using Task over Async is the speed bonus. However it may remain to be seen if having taskResult keeps speed up. I would probably need to make a benchmark for that as well.

Read more comments on GitHub >

github_iconTop Results From Across the Web

FsToolkit.ErrorHandling: README
ErrorHandling is a utility library to work with the Result type in F#, ... TaskResult you will also have access to computation expressions...
Read more >
FsToolkit.Errorhandling 2.0 - Jimmy Byrd
I'll be covering things library consumers can use such as: ... added support to the result asyncResult taskResult and jobResult builders, ...
Read more >
theangrybyrd
TaskResult by: theangrybyrd demystifyfp ... F# Template for creating and publishing libraries targeting . ... JobResult by: theangrybyrd demystifyfp.
Read more >
Using Task.Wait on a parallel task vs asynchronous task
Parallel tasks may use blocking members, such as Task.Wait, Task.Result, Task.WaitAll, and Task.WaitAny. In contrast, asynchronous tasks should ...
Read more >
[OE-core] [PATCH 02/15] rpm: update to 4.14.0
N_ABI-when-searching-for-python-libraries.patch | 30 ... _("Finished binary package job, result %d, filename %s\n"), task->result, ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found