On 4/12/07, Nicholas Clark <[EMAIL PROTECTED]> wrote:
On Thu, Apr 12, 2007 at 01:50:09PM -0500, Joshua Isom wrote:
>
> On Apr 12, 2007, at 9:29 AM, Nicholas Clark wrote:
> 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.
The problem is that between now and that next release, someone inevitably
writes something on Linux that doesn't work on Win32, and they blame everyone
but themselves.
I'd much prefer to nip the problem in the bud by preventing the code from
ever being shipped.
i sit on nicholas's side of the fence. maybe i've been working on
windows too long, but this is the behavior i've come to expect. if a
function is not meant for public consumption, why is it available?
let's learn from the mistakes of previous designers and earlier
technologies.
when designing and implementing parrot's embedding/extending api, it'd
be nice if the linker failed on platforms other than windows. this
patch will accomplish that nicely.
~jerry