Yes, Matt is right.

`dmdSigInfo` describes the how a function Id uses its arguments and free variables, whereas
`demandInfo` describes how a (local, mostly) Id is used.

Note that if you wanted to go beyond type-checking, you could probably run the analysis on the desugaring of the current module quite easily. But the results would be misleading, as prior optimisations (that you probably don't want to run) may arrange the program in a way that demand analysis has an easier time.

------ Originalnachricht ------
Von: "Matthew Pickering" <matthewtpicker...@gmail.com>
An: "Alejandro Serrano Mena" <trup...@gmail.com>
Cc: "GHC developers" <ghc-devs@haskell.org>
Gesendet: 13.01.2022 15:38:29
Betreff: Re: Strictness/demand info for a Name

You look at `dmdSigInfo` in `IdInfo`.

Matt

On Thu, Jan 13, 2022 at 2:20 PM Alejandro Serrano Mena
<trup...@gmail.com> wrote:

 Dear all,

 I’m trying to bring the information about demand and strictness to the Haskell 
Language Server, but I cannot find a way to do so. I was wondering whether you 
could help me :)

 Here’s my understanding; please correct me if I’m wrong:

 The analysis runs on Core, so getting this information for the current file 
would require to run the compiler further than type checking, which is quite 
expensive,
 However, this analysis should somehow use known information about imported 
functions, which should be readily available somewhere,
 If the above is true, what is the simplest way to get the information for 
imported things? As I mentioned above, I would prefer not to run the compiler 
further than the type checking phase, since otherwise it gets too expensive for 
IDE usage. Right now HLS uses the information from the .hie files.


 In fact, this goes into the more general question of how to show information 
from different analyses within the IDE; I guess solving the case for 
strictness/analysis may open the door to more (maybe everything recorded inside 
a `Id`?)

 Regards,
 Alejandro
 _______________________________________________
 ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to