[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Support for Meta-Programming
Stewart Greenhill (greenhil@murdoch.edu.au) schrieb:
>Another way to do it would be to write all of a module's definitions to the
>symbol file, but tag each item as exported or not exported. That way, the
>compiler can tell which items may be imported, but a debugger can also
>access non-exported items via Refs. Some meta-programming systems (eg.
>Oberon/F, Blackbox) only allow access to exported items.
The disadvantages for putting meta informatio into the symbol files are:
1) Symbol file gets more complicated, which will slow down reading it
Further on:
1a) Symbol files would contain _all_ declared variables, even those of
nested procedures. This would mean throwing away the "it's the interface
only"-paradigma.
1b) All tools accessing symbol would have to be rewritten/changed.
2) Current meta information is very, very simple. Thus replacing it by the
symbolfile would slow down access to meta infromation a _lot_.
>Of course, the advantage of separate files is that you can control whether
>you allow others to access the private, non-exported information. It would
The _big_ disadvantage would be: a module using meta information would
require the seberate file to be available.
+++hartmut