OK, I've neglected to fix a bunch of mistakes in the embedding system
for a few months.  These have now been fixed.

-Parrot becomes Parrot_Interp
-Parrot_String is gone and the string_funcs.h functions are no longer
externally visible.
-A few structures have been renamed.
-config.h has been rearranged so that INTVAL, etc. are now aliases for
Parrot_Int, etc.
-A few things that were accidentally made external no longer are.

At this point, I have a plea:  BRING ME THE HEAD OF THE COMPTUED GOTO
GUY!

I first noticed the problems with computed-goto when I found the
following line in test_main.c:

        #ifdef HAVE_COMPUTED_GOTO

See the problem?  Externally visible with no PARROT_ prefix.  That's
bad.  I tried to find where it was defined, but couldn't.  Finally, in
desperation, I grepped the entire distribution and found out why I
wasn't seeing it--it was being passed in to the compiler on the command
line.

This is Really Bad.  Not only is it externally visible without a prefix,
it's also prone to disappear without warning.

Now I'm pissed at whoever wrote the computed goto stuff.  There are two
ways to satisfy my blood lust:
        1. Bring me his head, so I can put it in a public place as a
warning to other Parrot hackers. [1]
        2. Just fix the thing--probably by putting it in config.h.

The second is far less destructive, so I recommend it.

[1] No offense intended to British hackers, or people from any other
culture that had similar practices.

--Brent Dax <[EMAIL PROTECTED]>
@roles=map {"Parrot $_"} qw(embedding regexen Configure)

blink:  Text blinks (alternates between visible and invisible).
Conforming user agents are not required to support this value.
    --The W3C CSS-2 Specification

Reply via email to