https://github.com/active-group/kotlin-free-monad
Support for free-monad-based DSLs in Kotlin
https://github.com/active-group/kotlin-free-monad
Last synced: about 2 months ago
JSON representation
Support for free-monad-based DSLs in Kotlin
- Host: GitHub
- URL: https://github.com/active-group/kotlin-free-monad
- Owner: active-group
- License: apache-2.0
- Created: 2023-05-14T12:52:47.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-09-17T13:49:32.000Z (almost 3 years ago)
- Last Synced: 2025-12-26T13:44:42.729Z (6 months ago)
- Language: Kotlin
- Size: 91.8 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# (Free) Monads for Kotlin
This is a small Kotlin library to simplify implementing monadic DSLs
in Kotlin, through the use of `suspend` functions and the compiler's
CPS transformation.
It is described at length in a JavaSPEKTRUM 2023 article *Monaden in
Kotlin* by Michael Sperber and Benedikt Stemmildt.
The code is [here](src/main/kotlin/de/activegroup/MonadDSL.kt), and
includes documentation.
Examples are [here](src/test/kotlin/de/activegroup).