зеркало из https://github.com/dotnet/fsharp.git
1 Коммитов
Автор | SHA1 | Сообщение | Дата |
---|---|---|---|
Don Syme |
f45ef819b5
|
[RFC FS-1087, FS-1097, FS-1098] tasks, resumable state machines, inline on parameters (#6811)
* Move existing Compiler.ComponentTests to a new Compiler.fs framework (#9839) (#9847)
* Move existing Compiler.ComponentTests to a new Compiler.fs framework; Add 'parse' function
* Changed some wording in error messages
Co-authored-by: Vlad Zarytovskii <vzaritovsky@hotmail.com>
* fix build
* fix order of diagnostics
* update baselines
* Delete FSharp.Compiler.Service.fsproj
* fix comments
* fix comments
* fix build
* fix build
* Reduce number of typeEquiv checks (#10324) (#10374)
Co-authored-by: Steffen Forkmann <steffen.forkmann@msu-solutions.de>
* xlf
* fix build
* fix build
* fix build
* fix build
* fix list and array builder perf
* better perf testing
* better perf testing
* better perf testing
* update baselines
* work on taskSeq { ... }
* remove old file
* enable all benchmarks
* update benchmarks
* update baseline
* static checking of resumable code
* static checking of resumable code
* fix build
* fix build
* fix build
* fix build
* fix build
* fix build
* fix baseline
* try fix stack overflow
* fix up tests
* add some negative testing, simplify implementation
* fix up tests
* fix baseline
* fix test and add negative baselines
* rename intrinsic and add test for seq case
* fix build
* fix and rename test
* fix test
* improve debugging
* improve debugging of try/with and try/finally
* fix baseline
* infer resumable code from single attribute on delegate type
* update samples
* inline if lambda
* update baselines
* fix check
* delegate and computed function reductions for inlined code
* update baselines
* update baselines
* update test
* fix test that failed randomly due to inexact floating point
* add tests for generated IL
* update tests
* don't use InlineIfLambda on sumBy and averageBy due to slight floating point changes
* add ability for struct machines to implement additional interfaces (needed for low allocation co-routines)
* add coroutines
* update baselines
* resumable code combinators and tailcalls for coroutines
* fix baselinhe
* make tasks using shared resumable code combinators the default. Also testing and fixes for dynamic execution of resumable code
* update baselines
* suppress warning in FSharp.Core
* suppress warning in FSharp.Core
* fix build
* fix build
* fix build
* update test
* only struct state machines
* codegen IResumableStateMachine
* update baselines
* update baselines
* notes on sample
* fix build
* Update coroutine.fs
* Negative testing following spec for compilability. Additional testing for dynamic implementation of tasks
* simpler coroutine sample, fix build
* update baselines
* remove unused state vars from internal represenation of object expressions
* add coroutine example
* update perf benchmarks
* remove old files
* code cleanup
* add compilergenerated attribute, add async2 approximate implementation
* test async perf w.r.t. previous compiler, add test for reduced stack trace
* using on IAsyncDisposable
* remove dynamic Awaiter field from tasks
* update surface area
* add backgroundTask { ... }
* surface area test only for decalred members etc.
* fix test
* add dynamic tests for backgroundTask
* fix codegen bug
* fix build
* simplify SRTP use in task.fs/fsi
* fix build and baselines
* fix build
* fix build
* fix build
* fix pacakge
* remove RFC FS-1099 from this PR
* remove RFC FS-1099 from this PR
* backgroundTask only switches to background if necessary
* Update tasks.fs
* fix test
* clear sync context for test
* clear sync context for test
* update baseline
* code review
* fix build
* fix build
* fix clearing state machines
* fix to clearing code
* improve generated task code and debugging
* only update baselines on failure
* fix some cases of debug stepping, improve isnull codegen, add more tests
* move TaskPerf to benchmarks directory
* fix baseline
* only update baselines when things changed
* fix baselines
* update baselines
* fix baselines
* fix build
* fix some tests, add hard error on language version check
* reset unchanged files
* update baselines
* update baselines
* fix baseline
* fix comparer
* flags
* Revert "flags"
This reverts commit
|