> We need to keep the theory and the code together and have
> each one explain the other. How else can you show that the
> code does what it is intended to do?
That is a very hard problem in general.
Good algorithms (as opposed to na´ve ones) are often connected to theory
in complicated ways -- just look at published algorithms. Then the
practical implementation of the algorithm is often connected to the
published algorithm in complicated ways.
"Literate programming" is effective when the algorithm has a nice
hierarchical structure, but there are many tricks that good algorithm
designers and programmers use which don't fit well into that structure.
Some years ago, I participated in a conference on transformational
programming where Tarjan talked about this... it was humbling.
Personally, I think this is a fascinating area, but it really is a
research problem in itself. So if your goal is solving physics/math
problems, I would recommend that you be pragmatic about how far you go
in trying to systematize the transition from theory to code.
This archive was generated by hypermail 2b29 : 03/22/18-10:00:02 PM Z CET