-
Notifications
You must be signed in to change notification settings - Fork 3
Description
This issue came out of discussions with @dpo and continued development of the NLP.py project. In that project, we're supporting several sparse matrix types and it's becoming a problem to carry a lot of different classes around. For example, when converting an NLPModel to a SlackModel, each supported sparse matrix type has its own variation of the SlackModel to handle the different method calls. Another important example is developing sparse QP solvers, because we don't want to have different solvers for each sparse matrix type. We think Cysparse should be the default sparse matrix package moving forward, so we are going to begin studying that.
At the same time, we would like to get cysparse back under active development so that the projects can support each other. Since the main class used in cysparse (under NLP.py) is the int64-float64 combination, we think this should be the focus of development, and set aside the other types. This would also allow us to trim the code base substantially and avoid the reliance on a templating engine.
Obviously a lot of work has gone into supporting many different type combinations, so we want to open this up for discussion. What do @syarra and @counterclocker think especially?