Erlang language issues

Richard Carlsson <>
Thu Apr 18 18:18:43 CEST 2002


On Thu, 18 Apr 2002, Thomas Lindgren wrote:

> > You *can* [rewrite guards, etc], even today! (Shameless self-promotion
> follows.)
> 
> Well, why not do it, then? :-) In the compiler, you can do it after
> macro preprocessing too, so the case of strange macros that you mention
> subsequently does not occur.

Not sure what you mean here. Of course, the compiler does those things
internally, when translating to Core Erlang: on that level, guards are
plain boolean expressions composed of 'and' and 'or', with 'catch'
blocks inserted as necessary to preserve the Erlang guard semantics. No
confusion there.

It's the source level backwards compatibility that's the problem. The
not entirely unimportant category called "customers" do not want to
change a single thing in their source code unless it is a bug - and
preferably not even recompile anything. They won't switch to a new
version of the compiler if that means new bugs in old code.

There are several small things that I'd personally like to modify in the
Erlang semantics, but it seems like a completely impossible thing to do.
Still, maybe if a "New Erlang" was released, with a compiler that could
be given a backwards-compatibility flag... or is that a pipe dream?

	/Richard

Richard Carlsson ()   (This space intentionally left blank.)
E-mail: 	WWW: http://www.csd.uu.se/~richardc/
 "Having users is like optimization: the wise course is to delay it."
   -- Paul Graham




More information about the erlang-questions mailing list