Fixed a small comment
Got started on the parsing of Bio-PEPA models. Not anything that is actually valid Bio-PEPA as yet.
Updated the first embryonic Bio-PEPA model test model to have part of a behaviour
Updated that first (and still incomplete) test Bio-PEPA model to have a proper behaviour
Now seem to be parsing behaviours correctly but I am not yet checking to see what the actual parsed object is
Added support for populations (that is a system equation, and a test which only involves a single species
Added kinetic laws to Bio-PEPA parser but since we are not parsing general rate expressions this is not currently all that useful
Added rate constants to Bio-PEPA models, but I'm still not entirely sure that we are parsing everything correctly because we are really only testing the populations.
Imported some old expression code which I think will be useful as an AST into which to parse expressions. Of course not much of this
Implemented __eq__ for NumExpressions which now allows our tests to get a little better. In the middle of implementing expressions for things like rates, rather than simple numbers. Also changed the expression inherited classes to call the super constructor in the proper way for Python3 and Python2
Turned parsed rates into expressions rather than floats. Had to do a bit of other fiddling around to make all the tests pass, but
that is what the tests are there for.
A bunch of tidy-up to satisfy make lint
Refactored the Bio-PEPA system equation grammar to use a utility function to create a list of items separated by separator specified by a grammar
Found one other place in the grammar we could apply 'separated_list'
Started attempting to parse actual expressions but I think I need to be much concientious about it. In particular I think I need to test that the correct expressions are being parsed.
Added a todo comment regarding the generalisation of removing the rate laws in apply expressions
Added two simple expression tests, both now failing
Now have failing tests for a simple plus expression, a simple name and multiply expression and an expression which uses a name which is missing from the environment
Added the operators as function names to the ApplyExpression's get_value method and that now means all our simple expression tests are passing
Minor 'make lint' fixes, adding blank lines