how do profiling stack traces fit into that "Static" vs "Dynamic" continuum?

On Mon, Dec 29, 2014 at 5:42 AM, Simon Peyton Jones <simonpj@microsoft.com> wrote:
| As far as I understand, DWARF information will give us the dynamic
| chain, while the ImplicitLocations idea will give us fragments of the
| static chain. So I believe these two features are complementary, and
| most useful if combined.

I think that's a very accurate summary, thanks.

Simon

| -----Original Message-----
| From: Libraries [mailto:libraries-bounces@haskell.org] On Behalf Of
| Bertram Felgenhauer
| Sent: 25 December 2014 20:10
| To: libraries@haskell.org
| Subject: Re: replace definition of error with errorWithStackTrace
|
| Johan Tibell wrote:
| > Why don't we use the DWARF information instead? It has no runtime
| overhead
| > so it can actually be turned on always. It also integrates with all the
| > standard open source tooling.
|
| I think there are two backtrace-like chains of interest for every
| Haskell value: There is one "static" chain that tracks how values are
| created, and one "dynamic" chain that tracks the actual evaluation.
| For example, for
|
|   makePair :: (Int, Int)
|   makePair = (error "The first component is actually undefined", 42)
|
|   sumPair :: (Int, Int) -> Int
|   sumPair (a, b) = a + b
|
|   main = print $ sumPair makePair
|
| the static chain up to the error call would be
|
|   main -> makePair -> error
|
| while the dynamic chain that actually produces the error is something
| like
|
|   main -> print -> show -> sumPair -> (+) -> error
|
| As far as I understand, DWARF information will give us the dynamic
| chain, while the ImplicitLocations idea will give us fragments of the
| static chain. So I believe these two features are complementary, and
| most useful if combined.
|
| Cheers,
|
| Bertram
| _______________________________________________
| Libraries mailing list
| Libraries@haskell.org
| http://www.haskell.org/mailman/listinfo/libraries
_______________________________________________
Libraries mailing list
Libraries@haskell.org
http://www.haskell.org/mailman/listinfo/libraries