{"action":"opened","issue":{"url":"https://api.github.com/repos/iu-parfunc/sc-haskell/issues/3","repository_url":"https://api.github.com/repos/iu-parfunc/sc-haskell","labels_url":"https://api.github.com/repos/iu-parfunc/sc-haskell/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/iu-parfunc/sc-haskell/issues/3/comments","events_url":"https://api.github.com/repos/iu-parfunc/sc-haskell/issues/3/events","html_url":"https://github.com/iu-parfunc/sc-haskell/issues/3","id":145965821,"number":3,"title":"Explore making `-threaded` a compile as well as link option","user":{"login":"rrnewton","id":274582,"avatar_url":"https://avatars.githubusercontent.com/u/274582?v=3","gravatar_id":"","url":"https://api.github.com/users/rrnewton","html_url":"https://github.com/rrnewton","followers_url":"https://api.github.com/users/rrnewton/followers","following_url":"https://api.github.com/users/rrnewton/following{/other_user}","gists_url":"https://api.github.com/users/rrnewton/gists{/gist_id}","starred_url":"https://api.github.com/users/rrnewton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rrnewton/subscriptions","organizations_url":"https://api.github.com/users/rrnewton/orgs","repos_url":"https://api.github.com/users/rrnewton/repos","events_url":"https://api.github.com/users/rrnewton/events{/privacy}","received_events_url":"https://api.github.com/users/rrnewton/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-04-05T11:54:05Z","updated_at":"2016-04-05T11:54:05Z","closed_at":null,"body":"This would add it to the list of compiler settings that cause Stack to separate compiler output (just like flags, profiling, etc).\r\n\r\nI hope there would not be a need to reify some kind of `ifThreaded` to the Haskell code.  Rather I think the fence operations can just turn to nothing inside the compiler.  Right now the fences are actually left as C function calls.  (And in the single threaded runtime, those function calls do nothing.)  But this is excessively expensive.\r\n\r\nI think for the sc-haskell project this is actually kind of low priority.  If people avoid the overhead of SC by running single threaded programs... that's not a very satisfactory solution.\r\n"}}