Ashley Winters:
# 1. Why is test_main.c not named main.c?

Because parrot.exe was originally named test_prog.exe, so at the time it
made sense for it to be called test_main.c.

# 2. What does having a Parrot_ prefix signify, considering 
# both the opcodes and 
# the embed api use it? It's hard to distinguish between them.

It signifies one of the following:
-This function is externally visible.
-This function belongs to Parrot at large, and not any particular
subsystem (e.g. Parrot_sprintf and friends).
-This function has an identical name to a C library function because it
emulates it for certain platforms (e.g. Parrot_dlopen (?)).
-This function is autogenerated, so we're going to be paranoid about
naming conflicts.

For functions in the last category, I'd suggest we use
subsystem-specific names, e.g. Op_ for the opcodes.

# 3. What source files implement what docs?

It's a mess.

# 4. Where can I find out what embed.c is doing?

Try looking in my brain.  :^)  I'll see what I can do about documenting
it more thoroughly.

# 5. Why is parrot.c empty?

It was originally supposed to serve the role of test_main.c, but that
didn't ever happen for some reason.  Ask Simon if you really want to
know.

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

He who fights and runs away wasted valuable running time with the
fighting.

Reply via email to