Question: Any Serialization Lang for Pure Functions
Question: Any Serialization Lang for Pure Functions
JSON and YAML work great for passing data between languages.
However, sometimes, I have a pure function like y = mx + b, that I would like to pass between languages (for making plots).
What operators should be available? I think jsonnet's standard library(skip to the math operators) is the perfect example of a useful set of operations that could be shared across basically all programming languages. The operations would take/return json values rather than working with language-specific data types.
My question is does such a language exist already?
Close candidates:
- Dhall and jsonnet are pure languages that generate json. But AFAIK they can't actually serialize pure functions. They can only use pure functions as a shorthand for generating json. I want to actually save/send functions over the wire.
What do you think about compiling to wasm, for these logical inter-exchanges?
I think that's actually a pretty good idea.
I could, right now, create the function in wasm, put it in yaml with a
!wasm
tag (or maybe a more specific tag) then the deserializer could detect it, load it, and wrap it in a function.Check out the ABI concept, if you haven't found it yet:
https://www.webassembly.guide/webassembly-guide/webassembly/wasm-abis