Is working with Haskell easier on Linux than on a Mac?

I have read that Haskell is easier to work with on Linux than on Windows. Is Haskell on Linux also easier than Haskell on OS X? I'm trying to do realtime OSC output from Haskell, because concurrency in Python is hard. Brandon Allbery on the haskell-cafe list, told me "chrt" and "sched_setscheduler" would be helpful. At the shell prompt I found that my system (OS X 10.9) does not recognize "chrt". I found a library on Hackage, "posix-realtime", that claims Mac compatibility and has a "sched_setscheduler" function, but my attempts to install it fail: sh-3.2# cabal install posix-realtime Resolving dependencies... Downloading unix-2.3.2.0... Configuring unix-2.3.2.0... Building unix-2.3.2.0... Failed to install unix-2.3.2.0 Last 10 lines of the build log ( /var/root/.cabal/logs/unix-2.3.2.0.log ): Building unix-2.3.2.0... Preprocessing library unix-2.3.2.0... dist/build/System/Posix/Signals.hs:124:10: fatal error: 'Signals.h' file not found #include "Signals.h" ^ 1 error generated. Even if I found a solution to this particular problem, I'm worried I'll keep running into similar ones, because I'm sure I'll keep trying new packages. Would this kind of work be substantially easier if I were using, say, Linux Mint?

Hi Jeffrey,
Haskell is what convinced me to switch to Linux (from Windows). Since
then, I've occasionally worked with Haskell on OS X, and I've found it to
have more snags than working with Haskell on Linux. Workarounds are
usually forthcoming though, since a substantial fraction of Haskell users
do use OS X. Generally, there seems to be a bit more friction using
Haskell with OS X than with Linux, but it can definitely be overcome. Of
course, Linux tends to have a bit more friction in dealing with the
hardware, especially Apple hardware.
Ryan
On Sun, Oct 19, 2014 at 4:13 PM, Jeffrey Brown
I have read that Haskell is easier to work with on Linux than on Windows. Is Haskell on Linux also easier than Haskell on OS X?
I'm trying to do realtime OSC output from Haskell, because concurrency in Python is hard. Brandon Allbery on the haskell-cafe list, told me "chrt" and "sched_setscheduler" would be helpful. At the shell prompt I found that my system (OS X 10.9) does not recognize "chrt". I found a library on Hackage, "posix-realtime", that claims Mac compatibility and has a "sched_setscheduler" function, but my attempts to install it fail:
sh-3.2# cabal install posix-realtime Resolving dependencies... Downloading unix-2.3.2.0... Configuring unix-2.3.2.0... Building unix-2.3.2.0... Failed to install unix-2.3.2.0 Last 10 lines of the build log ( /var/root/.cabal/logs/unix-2.3.2.0.log ): Building unix-2.3.2.0... Preprocessing library unix-2.3.2.0... dist/build/System/Posix/Signals.hs:124:10: fatal error: 'Signals.h' file not found #include "Signals.h" ^ 1 error generated.
Even if I found a solution to this particular problem, I'm worried I'll keep running into similar ones, because I'm sure I'll keep trying new packages. Would this kind of work be substantially easier if I were using, say, Linux Mint?
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners

Thanks, Ryan!
On Sun, Oct 19, 2014 at 1:22 PM, Ryan Trinkle
Hi Jeffrey,
Haskell is what convinced me to switch to Linux (from Windows). Since then, I've occasionally worked with Haskell on OS X, and I've found it to have more snags than working with Haskell on Linux. Workarounds are usually forthcoming though, since a substantial fraction of Haskell users do use OS X. Generally, there seems to be a bit more friction using Haskell with OS X than with Linux, but it can definitely be overcome. Of course, Linux tends to have a bit more friction in dealing with the hardware, especially Apple hardware.
Ryan
On Sun, Oct 19, 2014 at 4:13 PM, Jeffrey Brown
wrote: I have read that Haskell is easier to work with on Linux than on Windows. Is Haskell on Linux also easier than Haskell on OS X?
I'm trying to do realtime OSC output from Haskell, because concurrency in Python is hard. Brandon Allbery on the haskell-cafe list, told me "chrt" and "sched_setscheduler" would be helpful. At the shell prompt I found that my system (OS X 10.9) does not recognize "chrt". I found a library on Hackage, "posix-realtime", that claims Mac compatibility and has a "sched_setscheduler" function, but my attempts to install it fail:
sh-3.2# cabal install posix-realtime Resolving dependencies... Downloading unix-2.3.2.0... Configuring unix-2.3.2.0... Building unix-2.3.2.0... Failed to install unix-2.3.2.0 Last 10 lines of the build log ( /var/root/.cabal/logs/unix-2.3.2.0.log ): Building unix-2.3.2.0... Preprocessing library unix-2.3.2.0... dist/build/System/Posix/Signals.hs:124:10: fatal error: 'Signals.h' file not found #include "Signals.h" ^ 1 error generated.
Even if I found a solution to this particular problem, I'm worried I'll keep running into similar ones, because I'm sure I'll keep trying new packages. Would this kind of work be substantially easier if I were using, say, Linux Mint?
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners

As a Linux bigot myself, I'd say go with Linux. However, if you are more comfortable with OS X, I'm gonna guess that installing X Code (or whatever the compiler package is called these days) ought to make this one particular problem (header file not found) go away. On 10/19/2014 03:51 PM, Jeffrey Brown wrote:
Thanks, Ryan!
On Sun, Oct 19, 2014 at 1:22 PM, Ryan Trinkle
mailto:ryan.trinkle@gmail.com> wrote: Hi Jeffrey,
Haskell is what convinced me to switch to Linux (from Windows). Since then, I've occasionally worked with Haskell on OS X, and I've found it to have more snags than working with Haskell on Linux. Workarounds are usually forthcoming though, since a substantial fraction of Haskell users do use OS X. Generally, there seems to be a bit more friction using Haskell with OS X than with Linux, but it can definitely be overcome. Of course, Linux tends to have a bit more friction in dealing with the hardware, especially Apple hardware.
Ryan
On Sun, Oct 19, 2014 at 4:13 PM, Jeffrey Brown
mailto:jeffbrown.the@gmail.com> wrote: I have read that Haskell is easier to work with on Linux than on Windows. Is Haskell on Linux also easier than Haskell on OS X?
I'm trying to do realtime OSC output from Haskell, because concurrency in Python is hard. Brandon Allbery on the haskell-cafe list, told me "chrt" and "sched_setscheduler" would be helpful. At the shell prompt I found that my system (OS X 10.9) does not recognize "chrt". I found a library on Hackage, "posix-realtime", that claims Mac compatibility and has a "sched_setscheduler" function, but my attempts to install it fail:
sh-3.2# cabal install posix-realtime Resolving dependencies... Downloading unix-2.3.2.0... Configuring unix-2.3.2.0... Building unix-2.3.2.0... Failed to install unix-2.3.2.0 Last 10 lines of the build log ( /var/root/.cabal/logs/unix-2.3.2.0.log ): Building unix-2.3.2.0... Preprocessing library unix-2.3.2.0... dist/build/System/Posix/Signals.hs:124:10: fatal error: 'Signals.h' file not found #include "Signals.h" ^ 1 error generated.
Even if I found a solution to this particular problem, I'm worried I'll keep running into similar ones, because I'm sure I'll keep trying new packages. Would this kind of work be substantially easier if I were using, say, Linux Mint?
_______________________________________________ Beginners mailing list Beginners@haskell.org mailto:Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org mailto:Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners

On Sun, Oct 19, 2014 at 8:25 PM, Michael Martin
As a Linux bigot myself, I'd say go with Linux. However, if you are more comfortable with OS X, I'm gonna guess that installing X Code (or whatever the compiler package is called these days) ought to make this one particular problem (header file not found) go away.
I'd guess otherwise, because "" in a #include (having peeked back at the original message) means it's a locally defined file, not a system header. That said, it doesn't rule out configure not having created it because it couldn't find some system header --- but the Command Line Tools should be sufficient for that. -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net

On 10/19/2014 07:29 PM, Brandon Allbery wrote:
On Sun, Oct 19, 2014 at 8:25 PM, Michael Martin
mailto:mmartin4242@gmail.com> wrote: As a Linux bigot myself, I'd say go with Linux. However, if you are more comfortable with OS X, I'm gonna guess that installing X Code (or whatever the compiler package is called these days) ought to make this one particular problem (header file not found) go away.
I'd guess otherwise, because "" in a #include (having peeked back at the original message) means it's a locally defined file, not a system header. That said, it doesn't rule out configure not having created it because it couldn't find some system header --- but the Command Line Tools should be sufficient for that.
Signals.h provides an interface to OS process signals, and should be provided by either the compiler package, or by the operating system itself. A quick google for "Mac OS/X Signals.h" tells me that this header file is, indeed, provided by the X-Code compiler package.
-- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com mailto:allbery.b@gmail.com ballbery@sinenomine.net mailto:ballbery@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners

On Sun, Oct 19, 2014 at 8:34 PM, Michael Martin
Signals.h provides an interface to OS process signals
That is

On Sun, Oct 19, 2014 at 8:36 PM, Brandon Allbery
On Sun, Oct 19, 2014 at 8:34 PM, Michael Martin
wrote: Signals.h provides an interface to OS process signals
That is
, not "Signals.h". And while case may be fungible on OS X, the trailing "s" is not.
To be quite clear: pyanfar:857 Z$ ls -l /usr/include/signal.h -r--r--r-- 1 root wheel 5318 Oct 17 05:41 /usr/include/signal.h pyanfar:858 Z$ pkgutil --file-info /usr/include/signal.h volume: / path: /usr/include/signal.h pkgid: com.apple.pkg.DevSDK_OSX109 pkg-version: 6.1.0.0.1.1413057044 install-time: 1413646296 uid: 0 gid: 0 mode: 444 -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net

On 10/19/2014 07:36 PM, Brandon Allbery wrote:
On Sun, Oct 19, 2014 at 8:34 PM, Michael Martin
mailto:mmartin4242@gmail.com> wrote: Signals.h provides an interface to OS process signals
That is
, not "Signals.h". And while case may be fungible on OS X, the trailing "s" is not -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com mailto:allbery.b@gmail.com ballbery@sinenomine.net mailto:ballbery@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net
You are quite right. My apologies for jumping the gun on that one.
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners

Long ago (2007?) I switched from Linux to Mac because I could not figure
out how to do music on Linux -- in particular I remember audio interfaces
were particularly difficult to configure -- and on the Mac everything "just
worked". As my toolset diverges from the standard Mac audio rigs, though,
that it "just works" seems to become less and less true.
I've got XCode and the command line tools installed already. Installing
those certainly solved some problems, but alas not all of them.
On Sun, Oct 19, 2014 at 5:25 PM, Michael Martin
As a Linux bigot myself, I'd say go with Linux. However, if you are more comfortable with OS X, I'm gonna guess that installing X Code (or whatever the compiler package is called these days) ought to make this one particular problem (header file not found) go away.
On 10/19/2014 03:51 PM, Jeffrey Brown wrote:
Thanks, Ryan!
On Sun, Oct 19, 2014 at 1:22 PM, Ryan Trinkle
wrote: Hi Jeffrey,
Haskell is what convinced me to switch to Linux (from Windows). Since then, I've occasionally worked with Haskell on OS X, and I've found it to have more snags than working with Haskell on Linux. Workarounds are usually forthcoming though, since a substantial fraction of Haskell users do use OS X. Generally, there seems to be a bit more friction using Haskell with OS X than with Linux, but it can definitely be overcome. Of course, Linux tends to have a bit more friction in dealing with the hardware, especially Apple hardware.
Ryan
On Sun, Oct 19, 2014 at 4:13 PM, Jeffrey Brown
wrote: I have read that Haskell is easier to work with on Linux than on Windows. Is Haskell on Linux also easier than Haskell on OS X?
I'm trying to do realtime OSC output from Haskell, because concurrency in Python is hard. Brandon Allbery on the haskell-cafe list, told me "chrt" and "sched_setscheduler" would be helpful. At the shell prompt I found that my system (OS X 10.9) does not recognize "chrt". I found a library on Hackage, "posix-realtime", that claims Mac compatibility and has a "sched_setscheduler" function, but my attempts to install it fail:
sh-3.2# cabal install posix-realtime Resolving dependencies... Downloading unix-2.3.2.0... Configuring unix-2.3.2.0... Building unix-2.3.2.0... Failed to install unix-2.3.2.0 Last 10 lines of the build log ( /var/root/.cabal/logs/unix-2.3.2.0.log ): Building unix-2.3.2.0... Preprocessing library unix-2.3.2.0... dist/build/System/Posix/Signals.hs:124:10: fatal error: 'Signals.h' file not found #include "Signals.h" ^ 1 error generated.
Even if I found a solution to this particular problem, I'm worried I'll keep running into similar ones, because I'm sure I'll keep trying new packages. Would this kind of work be substantially easier if I were using, say, Linux Mint?
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing listBeginners@haskell.orghttp://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
participants (4)
-
Brandon Allbery
-
Jeffrey Brown
-
Michael Martin
-
Ryan Trinkle