[Haskell-beginners] edit-compile-test loop

Joe Fredette jfredett at gmail.com
Mon Sep 21 17:52:49 EDT 2009


Assuming I'm starting a brand-new project, it starts by creating a  
file in my code directory. initing darcs there, creating the .cabal  
file, and creating a basic module hierarchy. After that, I `touch` a  
couple of files. add the standard license/description/other header  
info...

When I'm working on the code proper, I have a screen session split to  
a ghci session and a vim session editing the file. The ghci sits in  
the base directory of the projects (where the _darcs folder is) and  
has the files I'm working on loaded. I edit, ^a-tab to ghci, reload,  
flip back, fix errors, repeat till it loads. After that, I run a few  
tests to make sure the program does what I think it does, if not, I  
fix it, then back to adding new functionality.

I hope this is what you wanted to know. Towards the point where I'm  
going to release a version, I  substitute the ghci-business to a  
proper test harness/cabal build to make sure it compiles all correctly.

/Joe

On Sep 21, 2009, at 5:35 PM, Tom Doris wrote:

> Hi
> I'd like to know what the typical edit-compile-test loop looks like  
> with the Haskell platform; that is, in C++ this would be edit, run  
> make to compile everything in the project into  libraries and  
> executables, then run an executable test suite. I'm confused as to  
> how people work on larger projects in Haskell - do you work on a  
> single module and load it into ghci to test as you develop, then  
> compile the entire package and run a test suite? Or do you generally  
> only use ghci for prototyping and not when in the middle of proper  
> development? Or do you compile the package and load that into ghci?  
> I'd like to know as I'm starting to work on patches for some hackage  
> packages which have proper cabal builds etc., and want to follow the  
> correct (and efficient!) convention.
> Thanks
> Tom
>
>
> _______________________________________________
> Beginners mailing list
> Beginners at haskell.org
> http://www.haskell.org/mailman/listinfo/beginners



More information about the Beginners mailing list