
On Tue, 05 Aug 2008 10:59:10 +0200, jinjing
Hi there,
Here's the project link:
http://github.com/nfjinjing/haskore-guide/tree/master/doc/index.markdown
I found Haskore pretty fun :) so I'm documenting it while learning it. Please don't hesitate to give suggestions / corrections.
About the installation section: I think beginners will be grateful if you write down the full "darcs get" commands and explain the --global parameter of the "cabal install" command. There are two more packages that need to be downloaded: - package hosc depends on package binary - package haskore depends on package unix Windows users will be grateful if you tell them that Haskore cannot be built on Windows, because of the dependance on the unix package. It would have saved me a lot of time if I knew that beforehand. For the people interested in porting Haskore to Windows I'll describe what I have done so far: src\Haskore\Basic\Timer\Posix.hs: System.Posix.Unistd.usleep replaced by Control.Concurrent.threadDelay (of course, the name of the file is not correct after this; better put the timer function in another file) File Haskore.cabal: removed "unix" from section "Build-depends" Added to cabal file: if os(windows) cpp-options: -DWIN32 Added to src\Haskore\Interface\CSound\Play.lhs:
{-# OPTIONS -cpp #-}
and around the signal handling part and the line
import qualified System.Posix.Signals as Signals :
#ifndef WIN32 ... #endif Same treatment for src/Haskore/Interface/MIDI/Play.lhs Finally I discovered that in the file src/Haskore/Interface/SuperCollider/Channel/Env.hs environment variables are set and that there is no setEnv or putEnv for Windows. GCC knows the function setenv(), but that function does not work as expected (on Windows); once the program terminates, the created environment variable has dissapeared. After I discovered that, I decided it would be too much yak shaving for me to go on. To solve this problem, on would either create an improved setenv() function, or redesign Haskore to pass the information some other way (and of course the program(s) that read this information). -- Met vriendelijke groet, Henk-Jan van Tuyl -- http://functor.bamikanarie.com http://Van.Tuyl.eu/ --