<div dir="ltr"><div>Yes, I've read Thomas Schilling's PhD thesis (Trace-based Just-in-timeCompilation for Lazy Functional Programming Languages) a couple of times.</div><div><br></div><div>My STG interpreter almost supports all kinds of primops that GHC does, and I plan to add the missing ones in the future.</div><div>I'd like to use literally the same source code for the concrete and the abstract interpretation. So IMO this would mean that all kinds of runtime properties would be approximated by the abstract interpreter.<br></div><div>But the most important property would be the control flow information.<br> </div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 7, 2021 at 5:58 PM Carter Schonwald <<a href="mailto:carter.schonwald@gmail.com">carter.schonwald@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">Correction it was Thomas schilling !! </div><div dir="auto">And you can Google his Phd thesis trace based just in time compilation for lazy functional programming languages </div><div dir="auto"><br></div><div dir="auto">And the associated code is on his GitHub nominolo/ lambdachine though I think it was last touched 7 years ago </div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 7, 2021 at 11:54 AM Carter Schonwald <<a href="mailto:carter.schonwald@gmail.com" target="_blank">carter.schonwald@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">I’m not aware of any currently.  </div><div dir="auto"><br></div><div dir="auto">I would be curious about the now relatively old work that Max bolingbroke did for his PhD (I think it was sortah a ghc to Lua JIT?!?)</div><div dir="auto"><br></div><div dir="auto">An important question is : what questions do you want the abstract interpreter to suport?</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 7, 2021 at 10:19 AM Csaba Hruska <<a href="mailto:csaba.hruska@gmail.com" target="_blank">csaba.hruska@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hello,</div><div><br></div><div>I wonder if there was an attempt in the past to create an abstract interpreter for GHC Core or STG to approximate the program runtime behaviour?</div><div>I'm curious because I'd like to turn my external STG interterpreter to an abstract interpreter using the AAM (Abstracting Abstract Machines) method.</div><div>This approach seems promising to me because a single Haskell code base (ext STG interpreter) could be the specification of the Haskell operational semantics and also be a detailed static analyzer that could help optimization transformations.<br></div><div>I'm interested in any attempt that happened during GHC/Haskell evolution.</div><div><br></div><div>Regards,</div><div>Csaba Hruska<br></div></div>
_______________________________________________<br>
ghc-devs mailing list<br>
<a href="mailto:ghc-devs@haskell.org" target="_blank">ghc-devs@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs</a><br>
</blockquote></div></div>
</blockquote></div></div>
</blockquote></div>