IntersectMBO / IntersectMBO/cardano-ledger
[FR]: Add capability to target building a WASM library from cardano-ledger
- Dominant language
- Haskell
- Stars
- 295
- Forks
- 179
- Avg merge
- 4d 7h
- Merged PRs (30d)
- 29
Description
It's difficult to use `cardano-ledger` as a library from languages other than Haskell.
It could be done via FFI, but that also has its challenges.
This feature request is to add a supported webasm library target for `cardano-ledger`.
This would allow any language that has a wasm runtime to load the ledger and use it as a library, without requiring FFI bindings.
I believe it would improve the re-usability of the core ledger.
If possible, it would be even better if the library supported the wasm component model: https://component-model.bytecodealliance.org/
As this would allow `cardano-ledger` `wit` files to universally define the interface to the library, for easy machine generated interfacing with other languages, and lower overall maintenance. This would also help track any breaking changes in the library interface, as the `wit` interface would change, and this would help prevent consuming projects using incompatible versions of the library.
Contributor guide
Assessment
This issue has not been assessed yet.