-
Notifications
You must be signed in to change notification settings - Fork 28
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
Use an external VectorSpace #13
Comments
This is an API removal. It would impact the version major, and show go in release 0.3. |
By the way, this implementation of vector-space, which I wanted to use for Yampa in the past, also depends on void. Of course there's linear, but that just depends on half the universe. Are there any simpler alternatives? If not, I'm happy externalising dunai's vector-space and moving forward with this. Since I'm not an expert in vector spaces, can I ask: what are the key differences between the two? If any of those differences actually "define" or are fundamental to this implementation, then they could help find a suitable name for this library. |
(Again, I'm happy depending on EDIT: Grammar |
I think Then I propose to fork |
Looking into this further, |
Ok. So, we can then delay this until 7.8 can be deprecated, and then this will naturally fall into place. |
What is needed to deprecate 7.8? Is there anything I can do? (E.g. porting existing apps to 7.10?) Should we open a separate issue? |
Unfortunately, no. But thanks. It's just a matter of patience. |
Following a discussion in http://mailman.cs.yale.edu/pipermail/yampa-users/2018-October/000478.html, it seems like we cannot depend on an existing vector-space/linear for now, but we can externalize Yampa's, find the common factor with dunai, and at least not have it in Dunai/Yampa. See: https://github.com/ivanperez-keera/Yampa/tree/develop-externalvectorspace and https://github.com/ivanperez-keera/simple-affine-space |
This commit externalizes vector spaces and affine spaces, and two obvious 2D and 3D instances, into a separate library. The new library can be found at: https://github.com/ivanperez-keera/simple-affine-space This makes sense from a semantic standpoint, and it makes Yampa much cleaner. There are reasons why we cannot rely on an existing library for the time being. In the (not-so-near) future, we might be able to simplify our own library, but that effort can be followed separately now. Past discussions can be found here: http://mailman.cs.yale.edu/pipermail/yampa-users/2018-October/000478.html ivanperez-keera/dunai#13 Closes #19.
I've been wanting to see this completed for a long time. I tried to tackle it a couple of times, but couldn't (that's why I suggested documenting it first). The vector-spaces in Yampa have been externalized. If we could at least move whatever we have in Dunai that fits into |
Refs #172, #13. The Data.VectorSpace module in dunai conflicts with the one in simple-affine-space, which is used by Yampa. Ideally, bearriver would use the same library, and apps written for Yampa would work out of the box. This was not the case. This change removes the module Data.VectorSpace from dunai completely, and uses the definitions in simple-affine-space instead. As a consequence of that: - RModule no longer exists. - Dunai needs a major version bump, and a new release. - Bearriver needs a constraint on dunai's version number and a new release. - Bearriver re-exports Data.VectorSpace from simple-affine-space, just like Yampa does.
This issue has been closed by picking one external package that was created from Yampa, and re-defining instances based on that. The long term plan is still to use a different library, but I am unhappy about the use of TH in Therefore, and as a means to move forward, and to close another issue #172, I have picked. If things are really bad, we can always re-introduce what's missing (maybe re-introduce it in https://github.com/ivanperez-keera/simple-affine-space if possible). |
Following the philosophy that dunai has to be slim,
VectorSpace
should really be a dependency. If there is no slim package supplying us with vector spaces, we should fork one.This is not an API change or API addition, and its not urgent.
The text was updated successfully, but these errors were encountered: