Hi,

If there is a ticket then I can look into it next week.

Cheers,

Matt

On Fri, Oct 22, 2021 at 12:11 PM Simon Peyton Jones
<simo...@microsoft.com> wrote:
>
> I’m out of cycles.  Do please open a ticket. You are more likely to get 
> attention that way.
>
>
>
> Matthew: maybe you can help with reproducing this?
>
>
> SImon
>
>
>
> PS: I am leaving Microsoft at the end of November 2021, at which point 
> simo...@microsoft.com will cease to work.  Use simon.peytonjo...@gmail.com 
> instead.  (For now, it just forwards to simo...@microsoft.com.)
>
>
>
> From: Erdi, Gergo <gergo.e...@sc.com>
> Sent: 19 October 2021 09:36
> To: Simon Peyton Jones <simo...@microsoft.com>; 'Matthew Pickering' 
> <matthewtpicker...@gmail.com>
> Cc: Montelatici, Raphael Laurent <raphael.montelat...@sc.com>; 'GHC' 
> <ghc-devs@haskell.org>
> Subject: RE: Specialisation doesn't kick in -- NOW WITH MINIMAL WORKING 
> EXAMPLE (RE: Instantiation of overloaded definition *in Core*)
>
>
>
> PUBLIC
>
>
>
> PUBLIC
>
>
>
> “settings”? Honestly, I have no idea. GHC looks at these files in the 
> directory passed to runGhc, and in my local setup I have some convoluted 
> ghc-lib-based system to persist these files and also the base package.db into 
> a Stack/cabal-installable package, but these are only needed for environments 
> where there’s no bona-fide GHC build directory.
>
>
>
> I am sure even without Hadrian, you should have these files somewhere under 
> your build directory, since otherwise the same same runGhc function (used 
> inside the GHC executable as well…) wouldn’t work. Maybe someone else with 
> non-Hadrian knowledge can tell you where these files are put in the 
> non-Hadrian build.
>
>
>
> From: Simon Peyton Jones <simo...@microsoft.com>
> Sent: Tuesday, October 19, 2021 4:08 PM
> To: Erdi, Gergo <gergo.e...@sc.com>; 'Matthew Pickering' 
> <matthewtpicker...@gmail.com>
> Cc: Montelatici, Raphael Laurent <raphael.montelat...@sc.com>; 'GHC' 
> <ghc-devs@haskell.org>
> Subject: [External] RE: Specialisation doesn't kick in -- NOW WITH MINIMAL 
> WORKING EXAMPLE (RE: Instantiation of overloaded definition *in Core*)
>
>
>
> Yes I have a full build.  No it was not built with Hadrian.  I did not 
> realise that your system relied not only on GHC as a library, but also on the 
> build system that you use to build GHC.
>
>
>
> I guess I can try that, but probably not today.  But what is “settings”?
>
>
>
> Simon
>
>
>
> PS: I am leaving Microsoft at the end of November 2021, at which point 
> simo...@microsoft.com will cease to work.  Use simon.peytonjo...@gmail.com 
> instead.  (For now, it just forwards to simo...@microsoft.com.)
>
>
>
> From: Erdi, Gergo <gergo.e...@sc.com>
> Sent: 19 October 2021 09:03
> To: Simon Peyton Jones <simo...@microsoft.com>; 'Matthew Pickering' 
> <matthewtpicker...@gmail.com>
> Cc: Montelatici, Raphael Laurent <raphael.montelat...@sc.com>; 'GHC' 
> <ghc-devs@haskell.org>
> Subject: RE: Specialisation doesn't kick in -- NOW WITH MINIMAL WORKING 
> EXAMPLE (RE: Instantiation of overloaded definition *in Core*)
>
>
>
> PUBLIC
>
>
>
> PUBLIC
>
>
>
> Do you have a full GHC build there? Are you using Hadrian? Did you set 
> `libDir`’s definition in the source file to where you have GHC built? I just 
> tried, and if I remove the files from my GHC build, I am able to rebuild them:
>
>
>
> mi@localhost[ghc] $ for i in settings llvm-passes llvm-targets; do rm 
> ~/prog/ghc/_build/stage1/lib/$i; done
>
> mi@localhost[ghc] $ for i in settings llvm-passes llvm-targets; do 
> ./hadrian/build-stack _build/stage1/lib/$i; done
>
> | Successfully generated _build/stage1/lib/settings.
>
> Build completed in 0.41s
>
>
>
> | Copy file: llvm-passes => _build/stage1/lib/llvm-passes
>
> Build completed in 0.40s
>
>
>
> | Copy file: llvm-targets => _build/stage1/lib/llvm-targets
>
> Build completed in 0.52s
>
>
>
>
>
>
>
> From: Simon Peyton Jones <simo...@microsoft.com>
> Sent: Tuesday, October 19, 2021 3:54 PM
> To: Erdi, Gergo <gergo.e...@sc.com>; 'Matthew Pickering' 
> <matthewtpicker...@gmail.com>
> Cc: Montelatici, Raphael Laurent <raphael.montelat...@sc.com>; 'GHC' 
> <ghc-devs@haskell.org>
> Subject: [External] RE: Specialisation doesn't kick in -- NOW WITH MINIMAL 
> WORKING EXAMPLE (RE: Instantiation of overloaded definition *in Core*)
>
>
>
> As for opening a ticket – a big part of the problem is that I don’t even know 
> yet if I’m doing something wrong, or GHC is! So it’s not clear what the 
> ticket would even be for – “I’m using the GHC API wrongly” is not a strong 
> bug report 😊
>
>
>
> Plenty of tickets turn out to be non-bugs.  But they are still searchable, 
> and form a permanent record that may help others, perhaps in unexpected ways. 
>  So I encourage you to do so.
>
>
>
> I successfully compiled the attached Main.hs with HEAD, passing ‘-package 
> ghc’ as a command line argument.
>
>
>
> When I run it I get
>
> simonpj@MSRC-3645512:~/tmp$ ./gergo
>
> Missing file: /home/simonpj/code/HEAD-1/compiler/stage1/build/settings
>
>
>
> So now I’m stuck again.
>
>
>
> Simon
>
>
>
> PS: I am leaving Microsoft at the end of November 2021, at which point 
> simo...@microsoft.com will cease to work.  Use simon.peytonjo...@gmail.com 
> instead.  (For now, it just forwards to simo...@microsoft.com.)
>
>
>
> From: Erdi, Gergo <gergo.e...@sc.com>
> Sent: 19 October 2021 02:57
> To: Simon Peyton Jones <simo...@microsoft.com>; 'Matthew Pickering' 
> <matthewtpicker...@gmail.com>
> Cc: Montelatici, Raphael Laurent <raphael.montelat...@sc.com>; 'GHC' 
> <ghc-devs@haskell.org>
> Subject: RE: Specialisation doesn't kick in -- NOW WITH MINIMAL WORKING 
> EXAMPLE (RE: Instantiation of overloaded definition *in Core*)
>
>
>
> PUBLIC
>
>
>
> PUBLIC
>
>
>
> Thanks for looking into this!
>
>
>
> `Paths_ghc_lib` is referenced just because I am using GHC via ghc-lib. You 
> can of course instead use a local full build of GHC for the libDir. Please 
> find an updated version attached that does that – you’ll just have to adapt 
> the definition of `libDir` to your environment.
>
>
>
> As for opening a ticket – a big part of the problem is that I don’t even know 
> yet if I’m doing something wrong, or GHC is! So it’s not clear what the 
> ticket would even be for – “I’m using the GHC API wrongly” is not a strong 
> bug report 😊
>
>
>
>
>
> From: Simon Peyton Jones <simo...@microsoft.com>
> Sent: Saturday, October 16, 2021 12:52 AM
> To: Erdi, Gergo <gergo.e...@sc.com>; 'Matthew Pickering' 
> <matthewtpicker...@gmail.com>
> Cc: Montelatici, Raphael Laurent <raphael.montelat...@sc.com>; 'GHC' 
> <ghc-devs@haskell.org>
> Subject: [External] RE: Specialisation doesn't kick in -- NOW WITH MINIMAL 
> WORKING EXAMPLE (RE: Instantiation of overloaded definition *in Core*)
>
>
>
> I could not compile Main.hs:
>
> ~/code/HEAD-1/inplace/bin/ghc-stage1 -c Gergo.hs -package ghc
>
>
>
> Gergo.hs:4:1: error:
>
>     Could not find module ‘Paths_ghc_lib’
>
>     Use -v (or `:set -v` in ghci) to see a list of the files searched for.
>
>   |
>
> 4 | import qualified Paths_ghc_lib as GHC
>
>   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> simonpj@MSRC-3645512:~/tmp$
>
>
>
> Would you like to open a ticket rather than do this by email?
>
>
> Simon
>
>
>
> PS: I am leaving Microsoft at the end of November 2021, at which point 
> simo...@microsoft.com will cease to work.  Use simon.peytonjo...@gmail.com 
> instead.  (For now, it just forwards to simo...@microsoft.com.)
>
>
>
> From: Erdi, Gergo <gergo.e...@sc.com>
> Sent: 15 October 2021 05:35
> To: Simon Peyton Jones <simo...@microsoft.com>; 'Matthew Pickering' 
> <matthewtpicker...@gmail.com>
> Cc: Montelatici, Raphael Laurent <raphael.montelat...@sc.com>; 'GHC' 
> <ghc-devs@haskell.org>
> Subject: RE: Specialisation doesn't kick in -- NOW WITH MINIMAL WORKING 
> EXAMPLE (RE: Instantiation of overloaded definition *in Core*)
>
>
>
> PUBLIC
>
>
>
> PUBLIC
>
>
>
> OK I now have a standalone demonstrator that shows, at least, that the 
> default method implementation is not specialized. With the attached input 
> programs, the resulting Core (using GHC 
> e46edfcf47d674731935b2ea1443cc7927e071fb) is as follows (only showing the 
> relevant parts):
>
>
>
> seq :: forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>
> seq
>
>   = \ (@(m :: * -> *)) (v_srS [Occ=Once1!] :: Monad m) ->
>
>       case v_srS of { C:Monad _ [Occ=Dead] v_srV [Occ=Once1] -> v_srV }
>
>
>
> $dmseq :: forall (m :: * -> *) a b. Monad m => m a -> m b -> m b
>
> $dmseq
>
>   = \ (@(m :: * -> *))
>
>       ($dMonad [Occ=Once1] :: Monad m)
>
>       (@a)
>
>       (@b)
>
>       (ma [Occ=Once1] :: m a)
>
>       (mb [Occ=OnceL1] :: m b) ->
>
>       let {
>
>         sat_ss0 [Occ=Once1] :: a -> m b
>
>         [LclId]
>
>         sat_ss0 = \ _ [Occ=Dead] -> mb } in
>
>       bind @m $dMonad @a @b ma sat_ss0
>
>
>
> $fMonadIO :: Monad IO
>
> $fMonadIO = C:Monad @IO bindIO $fMonadIO_$cseq;
>
>
>
> $fMonadIO_$cseq :: forall a b. IO a -> IO b -> IO b
>
> $fMonadIO_$cseq = \ (@a) (@b) -> $dmseq @IO $fMonadIO @a @b;
>
>
>
> foo :: IO ()
>
> foo = seq @IO $fMonadIO @() @() ioA ioA
>
>
>
> If I turn on Opt_D_dump_spec, I can see that specializer *is* running, it 
> just doesn’t *do* anything.
>
>
>
>
>
>
> This email and any attachments are confidential and may also be privileged. 
> If you are not the intended recipient, please delete all copies and notify 
> the sender immediately. You may wish to refer to the incorporation details of 
> Standard Chartered PLC, Standard Chartered Bank and their subsidiaries at 
> https: //www.sc.com/en/our-locations
>
> Where you have a Financial Markets relationship with Standard Chartered PLC, 
> Standard Chartered Bank and their subsidiaries (the "Group"), information on 
> the regulatory standards we adhere to and how it may affect you can be found 
> in our Regulatory Compliance Statement at https: //www.sc.com/rcs/ and 
> Regulatory Compliance Disclosures at http: //www.sc.com/rcs/fm
>
> Insofar as this communication is not sent by the Global Research team and 
> contains any market commentary, the market commentary has been prepared by 
> the sales and/or trading desk of Standard Chartered Bank or its affiliate. It 
> is not and does not constitute research material, independent research, 
> recommendation or financial advice. Any market commentary is for information 
> purpose only and shall not be relied on for any other purpose and is subject 
> to the relevant disclaimers available at https: 
> //www.sc.com/en/regulatory-disclosures/#market-disclaimer.
>
> Insofar as this communication is sent by the Global Research team and 
> contains any research materials prepared by members of the team, the research 
> material is for information purpose only and shall not be relied on for any 
> other purpose, and is subject to the relevant disclaimers available at https: 
> //research.sc.com/research/api/application/static/terms-and-conditions.
>
> Insofar as this e-mail contains the term sheet for a proposed transaction, by 
> responding affirmatively to this e-mail, you agree that you have understood 
> the terms and conditions in the attached term sheet and evaluated the merits 
> and risks of the transaction. We may at times also request you to sign the 
> term sheet to acknowledge the same.
>
> Please visit https: //www.sc.com/en/regulatory-disclosures/dodd-frank/ for 
> important information with respect to derivative products.
>
>
> This email and any attachments are confidential and may also be privileged. 
> If you are not the intended recipient, please delete all copies and notify 
> the sender immediately. You may wish to refer to the incorporation details of 
> Standard Chartered PLC, Standard Chartered Bank and their subsidiaries at 
> https: //www.sc.com/en/our-locations
>
> Where you have a Financial Markets relationship with Standard Chartered PLC, 
> Standard Chartered Bank and their subsidiaries (the "Group"), information on 
> the regulatory standards we adhere to and how it may affect you can be found 
> in our Regulatory Compliance Statement at https: //www.sc.com/rcs/ and 
> Regulatory Compliance Disclosures at http: //www.sc.com/rcs/fm
>
> Insofar as this communication is not sent by the Global Research team and 
> contains any market commentary, the market commentary has been prepared by 
> the sales and/or trading desk of Standard Chartered Bank or its affiliate. It 
> is not and does not constitute research material, independent research, 
> recommendation or financial advice. Any market commentary is for information 
> purpose only and shall not be relied on for any other purpose and is subject 
> to the relevant disclaimers available at https: 
> //www.sc.com/en/regulatory-disclosures/#market-disclaimer.
>
> Insofar as this communication is sent by the Global Research team and 
> contains any research materials prepared by members of the team, the research 
> material is for information purpose only and shall not be relied on for any 
> other purpose, and is subject to the relevant disclaimers available at https: 
> //research.sc.com/research/api/application/static/terms-and-conditions.
>
> Insofar as this e-mail contains the term sheet for a proposed transaction, by 
> responding affirmatively to this e-mail, you agree that you have understood 
> the terms and conditions in the attached term sheet and evaluated the merits 
> and risks of the transaction. We may at times also request you to sign the 
> term sheet to acknowledge the same.
>
> Please visit https: //www.sc.com/en/regulatory-disclosures/dodd-frank/ for 
> important information with respect to derivative products.
>
>
> This email and any attachments are confidential and may also be privileged. 
> If you are not the intended recipient, please delete all copies and notify 
> the sender immediately. You may wish to refer to the incorporation details of 
> Standard Chartered PLC, Standard Chartered Bank and their subsidiaries at 
> https: //www.sc.com/en/our-locations
>
> Where you have a Financial Markets relationship with Standard Chartered PLC, 
> Standard Chartered Bank and their subsidiaries (the "Group"), information on 
> the regulatory standards we adhere to and how it may affect you can be found 
> in our Regulatory Compliance Statement at https: //www.sc.com/rcs/ and 
> Regulatory Compliance Disclosures at http: //www.sc.com/rcs/fm
>
> Insofar as this communication is not sent by the Global Research team and 
> contains any market commentary, the market commentary has been prepared by 
> the sales and/or trading desk of Standard Chartered Bank or its affiliate. It 
> is not and does not constitute research material, independent research, 
> recommendation or financial advice. Any market commentary is for information 
> purpose only and shall not be relied on for any other purpose and is subject 
> to the relevant disclaimers available at https: 
> //www.sc.com/en/regulatory-disclosures/#market-disclaimer.
>
> Insofar as this communication is sent by the Global Research team and 
> contains any research materials prepared by members of the team, the research 
> material is for information purpose only and shall not be relied on for any 
> other purpose, and is subject to the relevant disclaimers available at https: 
> //research.sc.com/research/api/application/static/terms-and-conditions.
>
> Insofar as this e-mail contains the term sheet for a proposed transaction, by 
> responding affirmatively to this e-mail, you agree that you have understood 
> the terms and conditions in the attached term sheet and evaluated the merits 
> and risks of the transaction. We may at times also request you to sign the 
> term sheet to acknowledge the same.
>
> Please visit https: //www.sc.com/en/regulatory-disclosures/dodd-frank/ for 
> important information with respect to derivative products.
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to