[E-Lang] To Be Or Not To Be
Ralph Hartley
hartley@aic.nrl.navy.mil
Tue, 06 Mar 2001 11:37:32 -0500
--------------060700060506050908060909
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
Mark S. Miller wrote:
> At 10:40 AM Monday 3/5/01, Ralph Hartley wrote:
>
>> Achhh! I **hate** forward declarations!
>
>
> Well Ralph, I've got good news and bad news for you, and they're the
> same news. [;)]
>
> Stimulated by Ralph's message, and starting from Dean's suggested
> syntax for forward references, MarcS & I now have a proposal we're
> sufficiently happy with to float. It's also easy to implement, while
> only requiring scope analysis we can postpone for now (see #4 below).
> Best of all, it allows MarcS to present mutually recursive examples
> well before he introduces promises.
>
>
> 1) The forward declaration, introducing a name into scope:
>
> "def" <name>
Because I (and others) hate forward declarations, you are going to allow
forward declarations? Could you tell me the good news now?
While making them easier is good. Making them un-necessary would be better.
Maybe you should think of this in the context of ALL the ways names need
to be brought into scope. Names need to be available not only from later
in the same block, but also from other files in the same package, and
from other packages.
How would you handle mutually dependent functions foo and bar if they
were each defined in a different file? I know that this is something
that hasn't really been defined yet, but it needs to be.
Ralph Hartley
--------------060700060506050908060909--