Impressions of Mozart-Oz
Matthias Lang
matthias@REDACTED
Mon Dec 16 09:38:20 CET 2002
Roger Price writes:
> On Fri, 13 Dec 2002, Vance Shipley wrote:
>
> > Q: Where are the global variables?
> > A: There are none.... Don't use the process dictionary.
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> What's wrong with the process dictionary? Is it a matter of performance,
> or programming style, or something else?
Programming style.
If the answer was:
For beginners: Be patient. Complete the course and spend
a few days writing programs without global variables
until you're completely comfortable doing that. You don't
need global variables, honest.
For others: There are various ways to to achieve similar
effects to having global variables:
1. For storing constants, you can use a function, e.g.
max_line_length() -> 80.
you may wish to enable inlining if you do the above.
2. Using a registered process to store state.
3. Using ETS tables.
4. Using the process dictionary. This is widely considered
to be bad style.
Would you expect the average beginner to think "oh, ok, that sounds like
sensible advice", or would would it be "patronising academic wankers
with functional weirdo crap, the process dictionary is just what I need"?
Matthias
More information about the erlang-questions
mailing list