wolfram-expr-rs icon indicating copy to clipboard operation
wolfram-expr-rs copied to clipboard

Add serialization support for simple types

Open oovm opened this issue 3 years ago • 4 comments

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

oovm avatar Mar 02 '23 11:03 oovm

@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 avatar Mar 04 '23 13:03 oovm

@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.

ConnorGray avatar Mar 04 '23 14:03 ConnorGray

@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 avatar Mar 04 '23 14:03 ConnorGray

@ConnorGray New error handler can be found in src/error.rs.

oovm avatar Mar 06 '23 13:03 oovm