[Haskell-cafe] Are you a Haskell expert? [How easy is it to hire Haskell programmers]

Bulat Ziganshin bulat.ziganshin at gmail.com
Sat Jul 3 08:01:01 EDT 2010


Hello Ivan,

Saturday, July 3, 2010, 3:24:34 PM, you wrote:
>> haskell code is easily ported between OSes, unlike C one. when i
>> ported my application from Win to Linux, i spend one day on haskell
>> code and 3 days on C one, despite the fact that haskell code dealed
>> with OS interaction and C used purely for computations

> Care to provide more details?  This story intrigues me (even though I've
> never really used C that much, and would prefer to keep it that way).

since 2004 i'm developing FreeArc archiver, something like winzip. in
2007 i've ported it to Linux. the only Haskell part that required was
my own I/O library: i developed it in 2005 since ghc doesn't supported
large files and unicode filenames at that time. my library used
Win-specific calls and i, naturally, required to add some Unix way to
compile it - i just used standard Haskell I/O calls

generally speaking, as far as your program utilizes only existing
Haskell libraries, it just work. problems starts only when existing
Haskell libraries can't serve your needs and you start binding to some
C or OS-specific code

for the C part, i have found that some APIs i've used in mingw were in
fact MSVC-compatibility ones, and was absent in Linux gcc


i just looked at my darcs repository. Unix-specific patches were:

> added /dev/urandom as entropy source for Unix
> Unixifying: dir.size:=0
> Added Unix support for GetPhysicalMemory, GetProcessorsCount
> Unix: config files in "/etc"; fixed compilation scripts
> Unix: look for SFX in /usr/lib
> Unix: UTF8 for filelist/screen/filenames/cmdline encoding
> Unix: getThreadCPUTime
> CUI: hidden password input now works on Unix too

so, the main catch for C part were OS-specific calls like
GetPhysicalMemory - i spent lot of time reading mans. for Haskell
part, main changes were about default directories


-- 
Best regards,
 Bulat                            mailto:Bulat.Ziganshin at gmail.com



More information about the Haskell-Cafe mailing list