Skip to content
This repository has been archived by the owner on Nov 25, 2020. It is now read-only.

Remove Boost #6

Open
robertodr opened this issue Mar 9, 2018 · 7 comments
Open

Remove Boost #6

robertodr opened this issue Mar 9, 2018 · 7 comments

Comments

@robertodr
Copy link
Contributor

Boost is a heavyweight dependency and is only used to provide boost::any. We should find a way to pull the same trick without having to pull in the behemoth.

@bast
Copy link
Member

bast commented Mar 9, 2018

Yes please!

@robertodr
Copy link
Contributor Author

I'm not familiar with type erasure (the thing Boost Any does) so I need to read up a bit. I am sure it's removable, we don't need a fully general type.

@stigrj
Copy link
Contributor

stigrj commented Nov 6, 2018

Can perhaps std::any replace boost::any? Requires C++17 though.

@robertodr
Copy link
Contributor Author

I don't think we are ready for that quite yet... C++17 is still too cutting edge. Apologies from cutting you off from the discussion @bast and I had about Getkw. The current plan is to remove the compiled language bindings completely and have Getkw as just a Python module. See here and here for context and initial work. Mostly we'd want to keep the use as is now, with the difference that the parsed file is in JSON format (or YAML or anything else standard, really) The client (Python, C++, Fortran) will have to implement a JSON reader and there are many lightweight (header-only even for C++!) that do this already.

@bast
Copy link
Member

bast commented Nov 6, 2018

Sorry from me for not communicating the blog post work to Stig. It would be great to get your input. I plan to send comments/PRs soon.

@stigrj
Copy link
Contributor

stigrj commented Nov 6, 2018

No worries. It's great that things are happening 🙂

@robertodr
Copy link
Contributor Author

I'll make sure to ping you next time I write a post, so you can give feedback 😸

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants