Add serialization support for simple types
Supported types can be foun in test cases.
https://github.com/WolframResearch/wolfram-expr-rs/compare/master...oovm:wolfram-expr-rs:serde?expand=1#diff-cc856031f5a2bd26067d2ed100ee6e0dc576d5ed7c354a6f223468b7e5b85664R42-R68
@ConnorGray Can you take a look at this feature?
Some of my libs which depends serde need to export api to wolfram by this feature.
@oovm I appreciate you taking the time to prepare a PR with an important feature such as this, thank you for this contribution!
I do have some hesitation about the details of this design, but I also don't want this PR to get stuck and reduce your ability to use wolfram-expr. I propose that we put this new functionality behind a unstable-serde Cargo flag for the time being, and include a doc comment with an explicit warning that the serde functionality is semver exempt for the time being. I'll note the specifics of those changes in some review comments.
@oovm Thank you again for submitting this contribution. I hope my suggestion that we put this behind a non-default unstable Cargo flag is a reasonable compromise for the time being, which will let us both start experimenting with this functionality before committing to a final design or behavior.
Please let me know if you have any questions or concerns about the proposed path forward, or with any of my specific review comments.
@ConnorGray New error handler can be found in src/error.rs.