RE: [Haskell-cafe] RE: module names

2005-12-29 Thread Scherrer, Chad
Yes, good point. I suppose there's really no need to re-declare main once it's 
been imported. Thanks!

-Original Message-
From: Remi Turk [mailto:[EMAIL PROTECTED]
Sent: Thu 12/29/2005 4:34 PM
To: Scherrer, Chad
Cc: S Koray Can; haskell-cafe@haskell.org
Subject: Re: [Haskell-cafe] RE: module names
 
On Fri, Dec 16, 2005 at 07:55:50AM -0800, Scherrer, Chad wrote:
> From: S Koray Can [mailto:[EMAIL PROTECTED]
> Why not do this: name none of those modules Main.hs, and have an empty 
> module Main.hs with only "import MainDeJour" and "main = 
> MainDeJour.main" so you can just edit just that file.
> 
> Cheers,
> Koray
> 
> --
> Yeah, I like that approach. That saves me from having to remember which 
> file I most recent used as main. Seems easy enough to even set it up so
> that
> load MainDuJour
> writes the file Main.hs with
> 
> import MainDuJour
> main = MainDuJour.main

A rather late reply I realize, but this slightly less verbose
version also works:

> module Main where
>
> import MainDuJour

Remi

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] RE: module names

2005-12-29 Thread Remi Turk
On Fri, Dec 16, 2005 at 07:55:50AM -0800, Scherrer, Chad wrote:
> From: S Koray Can [mailto:[EMAIL PROTECTED]
> Why not do this: name none of those modules Main.hs, and have an empty 
> module Main.hs with only "import MainDeJour" and "main = 
> MainDeJour.main" so you can just edit just that file.
> 
> Cheers,
> Koray
> 
> --
> Yeah, I like that approach. That saves me from having to remember which 
> file I most recent used as main. Seems easy enough to even set it up so
> that
> load MainDuJour
> writes the file Main.hs with
> 
> import MainDuJour
> main = MainDuJour.main

A rather late reply I realize, but this slightly less verbose
version also works:

> module Main where
>
> import MainDuJour

Remi
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Re: module names

2005-12-20 Thread Bulat Ziganshin
Hello S,

Friday, December 16, 2005, 6:32:47 AM, you wrote:

SKC> Why not do this: name none of those modules Main.hs, and have an empty
SKC> module Main.hs with only "import MainDeJour" and "main = 
SKC> MainDeJour.main" so you can just edit just that file.

ghc has option "-main-is" which is just what needed in this case


-- 
Best regards,
 Bulatmailto:[EMAIL PROTECTED]



___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: module names

2005-12-20 Thread S Koray Can

Scherrer, Chad wrote:

module Main where
import A
import B
main = A.f >> B.f

  module A where
f = ...

  module B where
f = ...

in a single file. This example is straight from chapter 5 of the Report,
and no mention is made (that I could find) about modules needing to be
in separate files. But this won't load in ghci! (Even if ... is changed
to putStr "hi"). Eventually I figured out that it works fine if it's
split over three separate files.


The report says that they make up a single program, so that does not 
imply that they are in a single file. But, you are right: it's a good

idea to be explicit about this.


So here's what I'm trying to figure out: If every file corresponds to
exactly one module (is that true?), then why must the module name be
given again in the text of the file? When I'm using ghci, I have lots of
modules that I sometimes want to load "as Main", and sometimes I only
want them loaded as a dependency from another module. Currently, I have
to go into each file to change the "module Foo where" line to do this.


Section 9.5 of the report seems to show that  stands for the 
compilation unit and it defines a single module. I suppose the standard 
allows you to name your module freely no matter your filesystem allows, 
but ghc requires (afaik) that module M exist in M.hs or M.lhs.
Why not do this: name none of those modules Main.hs, and have an empty 
module Main.hs with only "import MainDeJour" and "main = 
MainDeJour.main" so you can just edit just that file.


Cheers,
Koray
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: module names

2005-12-17 Thread Peter Simons
Scherrer, Chad writes:

 > When I'm using ghci, I have lots of modules that I
 > sometimes want to load "as Main", and sometimes I only
 > want them loaded as a dependency from another module.
 > Currently, I have to go into each file to change the
 > "module Foo where" line to do this.

Maybe the "-main-is" option can help to make your live
easier? You'll find more information here:

  
http://haskell.org/ghc/docs/latest/html/users_guide/flag-reference.html#id3131936

Peter

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] RE: module names

2005-12-16 Thread Scherrer, Chad
-Original Message-
From: S Koray Can [mailto:[EMAIL PROTECTED]

Why not do this: name none of those modules Main.hs, and have an empty 
module Main.hs with only "import MainDeJour" and "main = 
MainDeJour.main" so you can just edit just that file.

Cheers,
Koray

--
Yeah, I like that approach. That saves me from having to remember which 
file I most recent used as main. Seems easy enough to even set it up so
that
load MainDuJour
writes the file Main.hs with

import MainDuJour
main = MainDuJour.main

and then and then calls
ghc --make Main.hs -o mainDuJour

This will do for now, but still feels really kludgy, especially for Haskell.

-Chad
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe