On Wed, Oct 11, 2006 at 05:13:13PM -0700, Greg Fitzgerald wrote: > To: Haskell Cafe <haskell-cafe@haskell.org> > From: Greg Fitzgerald <[EMAIL PROTECTED]> > Date: Wed, 11 Oct 2006 17:13:13 -0700 > Subject: [Haskell-cafe] do ghci > > Just curious, why does ghci run in the context of a 'do'? > > This tripped me up when I first started learning Haskell. It's fine once > you know what's going on, but why the restriction? Why can't I write the > code below without 'let' and ':module'? > > >two = 1 + 1 > >import Data.List > >cols = transpose [[1,2,3], [4,5,6]]
If you interact with a command line, it is natural to have IO side effects and evaluate the command lines in the order of appearance. ghci is sort of a command line, right? It is straight-forward enough to make up something ad hoc without using the concept of monadic IO and memory modification, but why? matthias
signature.asc
Description: Digital signature
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe