I have a just released a major version change of my Python package OPYCLEID for transformational music analysis.
The library is available on GitHub, and is also registered on PyPi (which means it can be installed very quickly with pip). As the library has grown in size and complexity, I also spent some time on writing a proper documentation, which is available here. From now on, this documentation page will replace the tutorials and explanations I wrote in this blog, but I will still post about new updates.
The main changes which were brought in this version are:
- Opycleid can now work with categories, instead of just monoids. To be exact, Opycleid handles CategoryAction classes which are practical implementations of faithful functors . At first I thought that the complexity of implementing it was not worth the benefits, but then I realized a way to easily code it.
- The corollary is that morphisms and objects are now explicitly defined by instantiating CatObject and CatMorphism classes. Category morphisms can even be manipulated as symbolic objects using Python operators *, **, ==, and so on. Also, the previous MonoidAction class now inherits from CategoryAction as a special case.
- Full documentation !
- Rewrote the code so that it is compatible for Python 3. Backward compatibility should still work.
Stay tuned for future updates on this library !