Candidate Haskell Platform 7.10.2-a for use with OS X El Capitan

The new OS X El Capitan release (out today) broke the method that Haskell Platform uses to install itself, due to new security features. In fact, if you upgrade your OS, you are also likely to (slightly) break your existing install. There is now a candidate new installer, available at http://downloads.haskell.org/~platform/7.10.2/Haskell%20Platform%207.10.2-a1... Note that it is unsigned and you will have to give it permission to run, the usual way, by right clicking on it, and choosing "open" then explicitly allowing it to run. The central difference between this and the prior installer is just that it installs symlinks to ghc tools in the /usr/local tree rather than the /usr tree since the latter is now off limits due to new OS X security features. If you have a prior install and just want to "fix" it after your OS upgrade, no need to reinstall the whole platform. Just download and run the activate-hs shellscript from here: https://github.com/mzero/haskell-platform/blob/master/hptool/os-extras/osx/b... Again, after a bit more testing we'll get this signed and released as the new official platform installer for OS X, but in the meantime, I wanted to make sure people were in the loop. Regards, Gershom

Haskell is a fantastic language for refactoring, but I find the module system gets in the way when I need to reorganize my files or am trying to use git submodules. My problem is that each module needs to "know where it is" relative to the global source paths in the cabal file. For example, if you have an import statement like ``` module Main where import SomeDirectory.SomeModule ``` the file SomeModule.hs must "know" that it is in a subdirectory as it is called because its name must have the "SomeDirectory" path as a prefix: module SomeDirectory.SomeModule where ... this would not work module SomeModule where ... To avoid having to add the SomeDirectory prefix, I end up putting *all* directories in the .cabal file. Question: Why does GHC require an exact match between the modulename and the complete path? Is there a way to relax this? Thanks, Dimitri
participants (2)
-
Dimitri DeFigueiredo
-
Gershom B