Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate data-msgpack-types and serialisation implementations. #33

Closed
iphydf opened this issue Dec 19, 2016 · 6 comments
Closed

Separate data-msgpack-types and serialisation implementations. #33

iphydf opened this issue Dec 19, 2016 · 6 comments
Assignees

Comments

@iphydf
Copy link
Member

iphydf commented Dec 19, 2016

We are currently tied to the binary package for serialisation. While very elegant, it may not be the best performing binary serialisation library. store seems to be faster. By separating the types and the specific serialiser, we can give the user a choice, and we can provide at least two implementations: one correct one (the existing one) and one fast one. We can then do random quickcheck-style equivalence testing between the two to make sure the fast one is also correct.

@SX91
Copy link

SX91 commented Dec 29, 2016

Also we need to extend (well, actually (re)write) documentation to point that data-msgpack is required for encoding/decoding (with binary) only, for MessagePack instances data-msgpack-types (or data-msgpack-class?) would be enough.

@SX91
Copy link

SX91 commented Jan 13, 2017

@iphydf if you could make a separate repo for types (or class, or object, whatever), I'd move all types related code there as a PR.

@iphydf
Copy link
Member Author

iphydf commented Jan 14, 2017

@SX91
Copy link

SX91 commented Jan 17, 2017

Do we need a re-export modules like Data.MessagePack.Object etc? I've put all types modules to Data.MessagePack.Types.*.

@iphydf
Copy link
Member Author

iphydf commented Jan 19, 2017

I don't know. So far I've been limiting the number of exposed modules, which gives some freedom to restructure and rearrange data and code. Perhaps a single Data.MessagePack.Types module re-exporting those would be good as the public API? Currently (in master) we don't expose .Object directly.

@iphydf
Copy link
Member Author

iphydf commented Jan 7, 2018

Done in #43.

@iphydf iphydf closed this as completed Jan 7, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants