On Apr 12, 2007, at 9:29 AM, Nicholas Clark wrote:
On Thu, Apr 12, 2007 at 09:13:14AM -0500, Steve Peters wrote:
On Thu, Apr 12, 2007 at 01:37:24PM +0200, Ron Blaschke wrote:
I think that we need to tread very carefully with adding additional
gcc-isms to Parrot, lest we break compatibility with additional
compilers
even further. If Parrot will run everywhere, we need to think about
working more towards ANSI and POSIX compliance.
On the other hand, we've managed very well in Perl 5 with the flag
data in
embed.fnc and generating the annotated headers programmatically.
I think it would have been nice to have had something like this some
years
ago (er, maybe 10) to prevent the magpies from turning any and every
function
in the Perl 5 core into part of the supported API.
My view of this is something along these lines. You can use any
function you want at all, but if it's not documented as part of the
supported API, there's nothing saying I won't purposely break your code
in the next release. In big bold red letters of course.
Particularly given that on some platforms (such as Win32) API
functions need
to be exported explicitly, resulting in modules written on *nix
platforms
not working on Win32.
(and actually, I'm tempted to add it even now to Perl 5 to enforce what
remains of our sanity)
Nicholas Clark