Initial version refactoring
a5kin opened this issue · comments
A collection of random issues coming to mind during code inspection.
- Add abstract methods to
Lattice
base class - Add abstract methods to
Neighborhood
base class - Split
Border
into 2 abstract casses - Remove unused Property.declare_once() argument
- Check the correctness of
OrthogonalNeighborhood.neighbor_state
-
MoveLattice.is_off_board_code
toBorder
- Merge
core.base.topology.mixins
andcore.base.mixins
We've done a good job in refactoring, fixing most of pylint
issues and making object model more consistent. Only 2 pylint
categories were disabled in the process: 1) no-member
, since it can not detect CellularAutomaton
members generated by the metaclass, 2) too-few-public-methods
, because experiment classes are holding "data" only, that's allowing them to be easily inherited.