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 <brentdax@cpan.org> @roles=map {"Parrot $_"} qw(embedding regexen Configure) He who fights and runs away wasted valuable running time with the fighting.Thread Previous | Thread Next