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

Overhaul IsPlistMatrixRep and IsPlistVectorRep #2973

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Commits on Oct 20, 2022

  1. Overhaul IsPlistMatrixRep and IsPlistVectorRep

    - change `IsPlistMatrixRep` to *not* be a row list type; so instead
      of storing a list of `IsPlistVectorRep` instances, they now store an
      old-style matrix in `IsMatrix and IsPlistRep`. This in turn allows
      to simplify and optimize a lot of code, e.g. matrix arithmetic can
      now just dispatch to that for plain lists.
    - use `BindConstant` on `BDPOS` etc. for best performance
    - set `IsNoImmediateMethodsObject` filter for both for better performance
    - rename `EMPOS` and `RLPOS` to `NUM_ROWS_POS` and `NUM_COLS_POS`
    - allow semirings as basedomain
    - fix various vector/matrix constructors to copy their inputs lists
      instead of reusing them inside (that can lead to bad bugs)
    - removed a bunch of (now) redundant methods that didn't seem to
      provide any benefits (such as improved performance)
    - ...
    fingolfin committed Oct 20, 2022
    Configuration menu
    Copy the full SHA
    36f1e6c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3738013 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    bb1a3b4 View commit details
    Browse the repository at this point in the history
  4. Revise printing of IsPlistMatrixRep

    This fixes printing of 0 x n matrices
    fingolfin committed Oct 20, 2022
    Configuration menu
    Copy the full SHA
    a957304 View commit details
    Browse the repository at this point in the history
  5. Tweak MatrixObj docs

    fingolfin committed Oct 20, 2022
    Configuration menu
    Copy the full SHA
    be1261d View commit details
    Browse the repository at this point in the history