Skip to content

Commit 43efb75

Browse files
Update README.md (#255)
Co-authored-by: Rachel M. Carmena <[email protected]>
1 parent 54c4e29 commit 43efb75

File tree

1 file changed

+16
-1
lines changed
  • arrow-libs/core/arrow-docs/docs/quickstart/libraries

1 file changed

+16
-1
lines changed

arrow-libs/core/arrow-docs/docs/quickstart/libraries/README.md

+16-1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ In this doc, we'll describe all the modules that form the core, alongside a list
1919
* [arrow-core-data]({{ '/quickstart/libraries/#arrow-core-data' | relative_url }})
2020
* [arrow-optics]({{ '/quickstart/libraries/#arrow-optics' | relative_url }})
2121
* [arrow-fx-coroutines]({{ '/quickstart/libraries/#arrow-fx-coroutines' | relative_url }})
22+
* [arrow-fx-stm]({{ '/quickstart/libraries/#arrow-fx-stm' | relative_url }})
2223
* [arrow-syntax]({{ '/quickstart/libraries/#arrow-syntax' | relative_url }})
2324
* [arrow-fx-rx2 & arrow-fx-reactor]({{ '/quickstart/libraries/#arrow-fx-rx2&arrow-fx-reactor' | relative_url }})
2425
* [arrow-mtl]({{ '/quickstart/libraries/#arrow-mtl' | relative_url }})
@@ -80,11 +81,25 @@ dependencies {
8081
}
8182
```
8283

83-
The [fx library]({{ '/fx/' | relative_url }}) is a Kotlin idiomatic functional effects stytem that offers a powerful set concurrency combinators and primitives with an emphasis on easy concurrency and parallelism with guarantees about concurrent and parallel resource safety and composition.
84+
The [fx library]({{ '/fx/' | relative_url }}) is a Kotlin idiomatic functional effects system that offers a powerful set concurrency combinators and primitives with an emphasis on easy concurrency and parallelism with guarantees about concurrent and parallel resource safety and composition.
8485
If offers a set of integrations for `KotlinX Coroutines`, `RxJava`, `Reactor`, etc. Check the [Arrow Fx documentation](({{ '/fx/' | relative_url }})) for more details.
8586

8687
Dependency: `arrow-core`
8788

89+
### arrow-fx-stm
90+
91+
```groovy
92+
dependencies {
93+
implementation "io.arrow-kt:arrow-fx-stm:$arrow_version"
94+
}
95+
```
96+
97+
The *STM* module provides powerful combinators to build safe stateful transactions in a concurrent settings. Transactions are guaranteed to not cause deadlocks or race conditions. This guarantee also carries over on composition which enables users to build everything from single transactions to fully concurrent datastructures.
98+
99+
The module also provides several common datastructures such as Queues, Semaphores, Maps and more.
100+
101+
Dependency: `arrow-fx-coroutines`
102+
88103
## Extension libraries
89104

90105
These libraries are hosted inside the Arrow repository building on the core, to provide higher level constructs to deal with concepts rather than code abstraction.

0 commit comments

Comments
 (0)