The current implementation of Cell and CellLine doesn't allow easy creation of different cell types that can perform different actions, besides, the actions that a cell can perform are not easily customizable.
This problem may be solved by implementing a mechanism for editing cell's actions at runtime, maybe something like:
def division_fn(cell, *args, **kwargs):
"The cell division action."
# Let there divide...
cell.add_action( {"division": division_fn} )
Although it is not really clear how the logging mechanism may be affected by this.
The current implementation of Cell and CellLine doesn't allow easy creation of different cell types that can perform different actions, besides, the actions that a cell can perform are not easily customizable.
This problem may be solved by implementing a mechanism for editing cell's actions at runtime, maybe something like:
Although it is not really clear how the logging mechanism may be affected by this.