Changes between Initial Version and Version 3 of Ticket #18099


Ignore:
Timestamp:
04/01/15 13:36:18 (7 years ago)
Author:
jsrn
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #18099

    • Property Status changed from new to needs_review
    • Property Commit changed from to bf70359e1dd818e8dfc066ad2efa4ea03e06144d
    • Property Branch changed from to u/dlucas/prepare_linear_code_for_inheritance
    • Property Authors changed from to David Lucas
  • Ticket #18099 – Description

    initial v3  
    11For now, every family of linear code (eg: Hamming code) is a method which returns a `LinearCode` object. It would be nice to change this: every family of code should be an object.
    22
    3 Because most codes share parameters (like `length`) it could be a good idea to do several parameter assignements in a specific method which be be called by each subclass to automatically do these assignements.
     3LinearCode's need to be initialised with some magic incantations for them to work as modules and in the category framework. This needs to be called by all sub-classes as well, and could be achieved by a "initialise code"-function (which is not `__init__`).
     4
     5Several private fields are also being set in the constructor which need to be set by all sub-classes. To avoid that subclasses need to know the name of these private fields (they should be accessed through public getters), we can instead set them using the above function as well.
    46
    57Besides, a linear code gets his `base_ring` using the `base_ring()` method from vector spaces. Linear codes should have their own method to do that.