<?xml version="1.0"?>
<!-- name="generator" content="blosxom/2.0.2" -->
<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">

<rss version="0.91">
  <channel>
    <title>peteg's blog   2009-05-12-StreamFusion.autumn</title>
    <link>http://peteg.org/blog</link>
    <description></description>
    <language>en</language>

  <item>
    <title>&lt;a href=&quot;http://www.unsafeperformio.com/&quot;&gt;Andy Gill&lt;/a&gt; &amp;amp; &lt;a href=&quot;http://www.cs.nott.ac.uk/~gmh/&quot;&gt;Graham Hutton&lt;/a&gt;'s Worker/Wrapper in &lt;a href=&quot;https://www4.in.tum.de/~nipkow/pubs/jfp99.html&quot;&gt;HOLCF&lt;/a&gt;, finally.</title>
    <link>http://peteg.org/blog/2009/07/27#2009-07-27-WorkerWrapper</link>
    <category>/hacking/isabelle</category>
    <description>
&lt;p&gt;

Finally completed this bit of work, started sometime around &lt;a
href=&quot;http://peteg.org/blog/hacking/isabelle/2008-03-02-WorkerWrapper.autumn&quot;&gt;December 2007&lt;/a&gt;. The &lt;a href=&quot;http://isabelle.in.tum.de/&quot;&gt;Isabelle&lt;/a&gt; proofs available &lt;a
href=&quot;http://peteg.org/isabelle/worker_wrapper/&quot;&gt;here&lt;/a&gt; remain a bit
rough, but I did manage to find a bug in the original presentation by
&lt;a href=&quot;http://www.unsafeperformio.com/&quot;&gt;Andy Gill&lt;/a&gt; and &lt;a href=&quot;http://www.cs.nott.ac.uk/~gmh/&quot;&gt;Graham Hutton&lt;/a&gt; &amp;mdash; &lt;code&gt;unwrap&lt;/code&gt; must be
strict for fusion to be correct. From there it is a short step to a
fusion rule that provably works. I've submitted a corrigendum-ish
paper to the &lt;a href=&quot;http://journals.cambridge.org/action/displayJournal?jid=JFP&quot;&gt;JFP&lt;/a&gt; and we'll see what happens now.

&lt;/p&gt;</description>
  </item>
  <item>
    <title>&lt;a href=&quot;http://web.cecs.pdx.edu/~brianh/&quot;&gt;Brian Huffman&lt;/a&gt;'s soundness proofs for stream fusion</title>
    <link>http://peteg.org/blog/2009/05/12#2009-05-12-StreamFusion</link>
    <category>/hacking/isabelle</category>
    <description>
&lt;p&gt;

I never post about anything technical I do any more, so instead I'll
talk about someone else's stuff. &lt;a href=&quot;http://web.cecs.pdx.edu/~brianh/&quot;&gt;Brian Huffman&lt;/a&gt;, &lt;a href=&quot;https://www4.in.tum.de/~nipkow/pubs/jfp99.html&quot;&gt;HOLCF&lt;/a&gt;'s last
man standing, has a brand new entry in the &lt;a href=&quot;http://afp.sourceforge.net/&quot; class=&quot;title&quot;&gt;Archive of Formal Proofs&lt;/a&gt;
about verifying &lt;a
href=&quot;http://www.cse.unsw.edu.au/~dons/streams.html&quot;&gt;stream
fusion&lt;/a&gt;. From a cursory read I thought he had opted for the
&quot;correct but &lt;a href=&quot;http://haskell.org/ghc/&quot;&gt;GHC&lt;/a&gt; can't optimise it&quot; variant floated in the
original paper, but it turns out he has modelled the actual
implementation. As always his proofs are mystifying in their clarity
and succinctness.

&lt;/p&gt;&lt;p&gt;

Sweet, &lt;a
href=&quot;http://mlton.org/pipermail/mlton-user/2007-April/001091.html&quot;&gt;someone
has ported the library to Standard ML&lt;/a&gt;.

&lt;/p&gt;&lt;p&gt;

Incidentally I stumbled upon &lt;a
href=&quot;http://www.inferenzsysteme.informatik.tu-darmstadt.de/verifun/&quot;&gt;VeriFun&lt;/a&gt;,
which looks like it might be interesting, albeit inert. I wonder what
their underlying logic is.

&lt;/p&gt;</description>
  </item>
  </channel>
</rss>

