I'm not sure you can. Why do you need it? Отправлено с iPad
18.02.2012, в 14:56, Heinrich Hördegen <hoerde...@funktional.info> написал(а): > Hi, > > this is true. The optimization only works with -O2. I'd like to have more > details about what's going on. How can I make sure, that this optimization > triggers? > > Heinrich > > On 18.02.2012 11:10, MigMit wrote: >> Different kinds of optimization. I expect you'd have different results even >> if you use one type, but different -O flags. >> >> On 18 Feb 2012, at 13:28, Heinrich Hördegen wrote: >> >>> Dear all, >>> >>> I have a question about evaluation with respect to types and currying. >>> Consider this programm: >>> >>> import Debug.Trace >>> >>> -- add :: Integer -> Integer -> Integer >>> add :: Int -> Int -> Int >>> add x y = x + y >>> >>> f a b c = trace "b" (add x c) where x = trace "a" (add a b) >>> >>> main :: IO () >>> main = do >>> print (f 1 2 3) >>> print (f 1 2 4) >>> >>> >>> Compiled with ghc-7.0.3: >>> >>> $ ghc --make Main.hs -o main -O2 >>> >>> The function add has to types. When we use type Int -> Int -> Int, the >>> programm produces "b a 6 b a 7" as output which shows that the x from the >>> where clause in f is evaluated twice. However, when we use type Integer -> >>> Integer -> Integer, this will give "b a 6 b 7" which shows that x is >>> evaluated only once. This was rather unexpected to me. >>> >>> Why does the number of evaluation steps depend on a type? Can anybody >>> explain this or give a hint? >>> >>> Thank you very much, >>> Heinrich >>> >>> >>> >>> -- >>> -- >>> >>> hoerde...@funktional.info >>> www.funktional.info >>> >>> -- >>> >>> >>> _______________________________________________ >>> Haskell-Cafe mailing list >>> Haskell-Cafe@haskell.org >>> http://www.haskell.org/mailman/listinfo/haskell-cafe >> > > > -- > -- > > Funktionale Programmierung Dr. Heinrich Hördegen > Gutenbergstr. 26 > 80638 München > > FON: +49 (89) 12 59 79 49 > FAX: +49 (89) 12 59 79 50 > > hoerde...@funktional.info > www.funktional.info > > -- > _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe