GHC Win32 ffi functions as implemented for Pugs

Max Maischein (Corion) perl6 at
Mon May 23 12:27:10 EDT 2005

Hello Simon,

> System.Environment.getEnv should work on Win32.  For the others, it
> would possibly make sense to include these in System.Environment, with
> implementations for both Unix & Win32.
getEnv works yes, but I wanted to have setEnv and unsetEnv too, and I 
think the interface was somehow different.

>>For Posix.Process
>>getProcessTimes :: IO ProcessTimes
>>getProcessID :: IO Int
> Should probably be in System.Win32 somewhere.
Oh - I have completely overlooked System.Win32 - I'll take a dive into 
that and see what I can find there!

>>The code itself is dual-licensed under the Artistic License and GPL
>>and thus should be compatible with whatever license GHC uses.
> Unfortunately we can't take code under that license into our existing
> packages - the rule is that each package has a single license, and
> currently all the packages distributed with GHC have a BSD3 license,
> with the exception of readline.  You can start new packages, of course.
I did not express myself well - by "dual licensed" I mean that the 
choice of license is with the user of the code, and this code offers two 
licenses, the viral GPL and the reuse friendly Artistic License. I 
imagine that if you chose the Artistic License there should be no 
problem, but I'll take a look at the BSD3 license - there should be no 
problem using this code with GHC, as I prefer code to be used instead of 
being encumbered with licenses. If it turns out that Artistic and BSD3 
are incompatible, I'll need to talk to the other committers, but I still 
expect to be able to give you the code.

Thanks for the quick feedback and hint of System.Win32,

More information about the Libraries mailing list