You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: FSharp-6.0/FS-1087-resumable-code.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -868,7 +868,7 @@ At high approximation a Coroutine is Task<unit> without async I/O allowed. They
868
868
> * exceptions get stored away when they happen
869
869
> * you get to return a result `Task<T>` (which makes them more "functional" and type-safe)
870
870
871
-
See [coroutineBasic.fs](https://github.com/dotnet/fsharp/blob/main/tests/benchmarks/CompiledCodeBenchmarks/TaskPerf/TaskPerf/coroutineBasic.fs).
871
+
See [coroutineBasic.fs](https://github.com/dotnet/fsharp/blob/6e7e5f3882f8315f95df0e8d39767e55ceb3d702/tests/benchmarks/CompiledCodeBenchmarks/TaskPerf/TaskPerf/coroutineBasic.fs).
872
872
873
873
In this example we show how to use resumable code to define a computation expression for a basic form of coroutines. The logical
874
874
properties are:
@@ -1146,7 +1146,7 @@ While there are improvements that can be made here, the JIT will perform obvious
1146
1146
1147
1147
## Example: coroutine { ... } with tailcalls
1148
1148
1149
-
See [coroutine.fs](https://github.com/dotnet/fsharp/blob/main/tests/benchmarks/TaskPerf/coroutine.fs).
1149
+
See [coroutine.fs](https://github.com/dotnet/fsharp/blob/6e7e5f3882f8315f95df0e8d39767e55ceb3d702/tests/benchmarks/CompiledCodeBenchmarks/TaskPerf/TaskPerf/coroutine.fs).
1150
1150
1151
1151
This is for state machine compilation of coroutine computation expressions that support yielding and tailcalls.
1152
1152
@@ -1156,17 +1156,17 @@ See [tasks.fs](https://github.com/dotnet/fsharp/blob/main/src/FSharp.Core/tasks.
1156
1156
1157
1157
## Example: taskSeq { ... }
1158
1158
1159
-
See [taskSeq.fs](https://github.com/dotnet/fsharp/blob/main/tests/benchmarks/CompiledCodeBenchmarks/TaskPerf/TaskPerf/taskSeq.fs).
1159
+
See [taskSeq.fs](https://github.com/dotnet/fsharp/blob/6e7e5f3882f8315f95df0e8d39767e55ceb3d702/tests/benchmarks/CompiledCodeBenchmarks/TaskPerf/TaskPerf/taskSeq.fs).
1160
1160
1161
1161
This is for state machine compilation of computation expressions that generate `IAsyncEnumerable<'T>` values. This is a headline C# 8.0 feature and a very large feature for C#. It appears to mostly drop out as library code once general-purpose state machine support is available.
1162
1162
1163
1163
## Example: reimplementation of F# async
1164
1164
1165
1165
I did a trial re-implementation of F# async (imperfectly and only a subset of the API) using resumable code. You can take a look at the subset that's implemented by looking in the signature file
@@ -1185,7 +1185,7 @@ That said it should be good enough to allow an FSharp.Control.Async2 package tha
1185
1185
1186
1186
# Performance
1187
1187
1188
-
[Recent perf status of implementation](https://github.com/dotnet/fsharp/blob/main/BenchmarkDotNet.Artifacts/results/TaskPerf.Benchmarks-report-github.md)
1188
+
[Recent perf status of implementation](https://github.com/dotnet/fsharp/blob/6e7e5f3882f8315f95df0e8d39767e55ceb3d702/BenchmarkDotNet.Artifacts/results/TaskPerf.Benchmarks-report-github.md)
0 commit comments