Short answer: no, and what it gives is quite different.<div><br></div><div><br></div><div>Long answer: </div><div><br></div><div>Erlang gives me two things that are hard to replicate:</div><div>1. firm-realtime performance, even at high load: the distributed GC is very nice</div>
<div>2. a very well defined model for handling, and recovering from failure</div><div><br></div><div>Hot code reload is nice, but is mostly used as a bandaid for the multitude of bugs present with dynamic typing and a &quot;let it crash&quot; (minimal defensive programming, let process isolation handle bad cases by failing) approach. So it&#39;s absence in Haskell doesn&#39;t bother me.</div>
<div><br></div><div>1 is a personal preference that&#39;s been useful in a couple of projects. It&#39;s application specific and probably not a factor for most people, I just had a chance to enjoy it.</div><div><br></div>
<div>2 is solved in Erlang via techniques and know-how built up from years of practice and testing. High level abstractions like supervision trees, restart types, and gen_servers are well known. Most importantly, the correct way to use them to build robust systems is well known. This is definitely duplicateable, it just needs some time and lots of testing to reach the same level of trust I&#39;ve got for Erlang.</div>
<div><br></div><div>My Haskell code is mostly total, and avoids failure-in-the-small (stupid bugs) amazingly well.</div><div><br></div><div>My Erlang code is an onion of recovery points, and avoids failure-in-the-large (hardware/link failures, nasty corner cases) amazingly well.</div>
<div><br></div><div>CloudHaskell looks like it provides the fundamental abstractions needed to start building the onion, and bring Erlang&#39;s robustness to Haskell. Getting to the same point will take time and effort, but I think is possible.<br>
<div><div><br><div class="gmail_quote">On Thu, Nov 3, 2011 at 9:09 PM, Ryan Newton <span dir="ltr">&lt;<a href="mailto:rrnewton@gmail.com">rrnewton@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">&gt; I have interfaced Erlang and Haskell... And delivered it as a product.  I<br>
&gt; just came up with a dead-simple text based communication syntax from Erlang<br>
&gt; to Haskell that was very easily testable.  It allowed for complete isolation<br>
<br>
</div>Interesting.  I can&#39;t imagine there are too many people who have done<br>
this.  So I must ask -- given the explicit attempt to imitate Erlang<br>
in recent CloudHaskell work, does that come close to giving you<br>
everything you would have wanted in this app?<br>
<br>
(Hot code update being the big missing piece.)<br>
<br>
Cheers,<br>
<font color="#888888">  -Ryan<br>
</font><div><div></div><div class="h5"><br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
</div></div></blockquote></div><br></div></div></div>