Fri, 07 Mar 2003 18:39:13 +0000
> In short, I'm working towards having a cleaner separation between
> code that implements the UI(s) and the actual interpreter.
We (Cherrielyn and I) made an effort when I was at Yale but didn't
manage to achieve complete separation and abandoned it.
By the way, if you fancy doing some cleanup...
Some of the files in hugs98/src/*.c are ridiculously large and contain
code that is only marginally related. machdep.c springs to mind. As
I understand it, this goes back to the days when DOS C compilers (or
maybe it was make or the shell?) couldn't handle more than about 8
filenames on the command line. This is probably also the reason for
#including .c files into each other.
Splitting some of those files up a bit seems like a very worthwhile
goal. I'm also not sure what the benefit of putting (almost) all
machine dependencies into machdep.c is. Well, I can see the benefit
of viewing all platforms as some kind of uniform abstract machine
implemented by the machdep.c code but I also see the benefit of
putting related code (e.g., the DLL loading code and the ffi code) in
the same file.