-f flag to runghc broken, or is it just me? (because trying switch elegantly between ghc 6.6 and ghc 6.7)

I'm doing a lot of switching between ghc 6.6 and ghc 6.7 on the same computer. I install modules using $ runghc Setup.hs configure etc. I would like to specify which version of ghc should be getting the package installed via the f flag to runghc $ :~/personal/PersonalRepos/pharchive/learning/haskell/UnixTools/arghandling>runghc runghc: syntax: runghc [-f GHCPATH] [GHC-ARGS] FILE ARG... but this appears to be broken. $ :~/personal/PersonalRepos/pharchive/learning/haskell/UnixTools/arghandling>runghc arghandling-nice.hs arghandling-nice.hs: args length does not equal 3. args: : [] usage example: $ runghc arghandling-nice.hs firstarg secondarg thirdarg without the flag works but $ :~/personal/PersonalRepos/pharchive/learning/haskell/UnixTools/arghandling>runghc -f /usr/local/bin/ghc-6.6.1 arghandling-nice.hs does nothing. $ :~/personal/PersonalRepos/pharchive/learning/haskell/UnixTools/arghandling>ls -l /usr/local/bin/ghc-6.6.1 -rwxr-xr-x 1 root root 151 2007-06-16 20:22 /usr/local/bin/ghc-6.6.1 In general I don't like using runghc because it doesn't appear to be documented anywhere except that (incorrect?) usage message. Is there a way to do a package install just using ghc -e? (Sure I could compile, but it helps me sometimes if I can not, a la runghc.) At any rate I couldn't figure out how to pass arguments to main via ghc -e. $ :~/personal/PersonalRepos/pharchive/learning/haskell/UnixTools/arghandling>cat arghandling-nice.hs import System main = do args <- getArgs let usagemsg = "usage example: $ runghc arghandling-nice.hs firstarg secondarg thirdarg" case args of [first,second,third] -> process first second third _ -> error $ "args length does not equal 3. args: : " ++ ( show args ) ++ "\n" ++ usagemsg process a b c = print $ unwords [a,b,c] Thanks for anybody who can help me out with this. Thomas. --- This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.

this works. now if only there were a "quiet" option for ghci...
well, for me, I guess this may be goodbye to poor sad undocumented
malfunctioning runghc..
hartthoma@linuxpt:~/personal/PersonalRepos/pharchive/learning/haskell/UnixTools/arghandling>echo
":main 1 2 3" | /usr/local/bin/ghci-6.6.1 arghandling-nice.hs
___ ___ _
/ _ \ /\ /\/ __(_)
/ /_\// /_/ / / | | GHC Interactive, version 6.6.1, for Haskell 98.
/ /_\\/ __ / /___| | http://www.haskell.org/ghc/
\____/\/ /_/\____/|_| Type :? for help.
Loading package base ... linking ... done.
[1 of 1] Compiling Main ( arghandling-nice.hs, interpreted )
Ok, modules loaded: Main.
*Main> Loading package haskell98 ... linking ... done.
"1 2 3"
*Main> Leaving GHCi.
Thomas Hartman

On Wed, Aug 22, 2007 at 01:38:39PM -0400, Thomas Hartman wrote:
$ runghc -f /usr/local/bin/ghc-6.6.1 arghandling-nice.hs
does nothing.
Contrary to the usage message, you aren't actually allowed a space after "-f" in 6.6.1 (but you are in 6.7). Use runghc -f/usr/local/bin/ghc-6.6.1 arghandling-nice.hs instead. Thanks Ian
participants (3)
-
Brent Yorgey
-
Ian Lynagh
-
Thomas Hartman