[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Original naming
From: Kevin Hammond <kh@cs.glasgow.ac.uk>
Date: Wed, 28 Nov 90 17:44:53 GMT
To: djm@cs.st-and.ac.uk, haskell@cs.glasgow.ac.uk
Subject: Re: Original naming
Sender: haskell-request@cs.glasgow.ac.uk
> ...Compilation order affects semantics under separate compilation...
Yes, the order of compilation is important if the language semantics is
to be preserved. This is the responsibility of the compilation system.
I thought this was mentioned somewhere in the report?
> A makefile could of course be used to resolve such problems, but do we
> really want to appeal to an external manager to solve this problem.
There are similar problems with self-recursive/mutually recursive modules.
A compiler probably *doesn't* want to solve these problems: it's a lot
easier if this is done externally (handling timestamping and automatic
recompilation should probably not be forced on a compiler, especially when
there exist standard tools for this job [makefiles/compilation scripts]).
Note that the same problems exist for any separately compiled language,
including C.
The language semantics (currently under preparation) may however need
to address these issues (Simon, is this handled in the rules, or do you
use a deus ex machina?). It might be sufficient to add a
side-condition to the imports rule on the lines of "if the interface is
a valid representation of the implementation". Or perhaps the
imports rules could be recursive, invoking the module rule [this is less
pleasant, since we would need to ensure termination in the semantics!].
Kevin