
Neil Mitchell wrote:
I have started writing Hat-Gui, a screenshot is available at: http://www-users.cs.york.ac.uk/~ndm/projects/hat-gui.png
Great! For the interactive tools a GUI will be even better.
What is the best way to acheive this split, and how should it be organised? Most of the tools are already relatively abstract - although will probably need tweaks.
I agree that splitting every tool module into a "model" module with a nice API and a textual "view" module is a very good idea. I wouldn't yet introduce any directory hierarchy (the hierarchical name space isn't Haskell 98 anyway). I think it would be slightly more meaningful if the models would keep the original names and the views be named e.g. HatStackText. Do you plan extensions of the user interface? For a long time I thought it would be nice to make hat-observe source-oriented: Make it a source browser in which you can mark any expression and then this expression is observed. This could even be combined with hat-cover, because obviously you should not be able to observe a slice of code that was never executed. Ciao, Olaf