﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>Frank Quednau commented on Designing Erlang#</title><description>No idea if that's of interest to you but linking costs nothing. Here's a ton and a half on writing a pattern matcher with Expression&lt;...&gt; in c# over here...
  
[bartdesmet.net/.../default.aspx](http://bartdesmet.net/blogs/bart/archive/tags/Functional+programming/default.aspx)</description><link>http://ayende.com/3604/designing-erlang#comment14</link><guid>http://ayende.com/3604/designing-erlang#comment14</guid><pubDate>Tue, 23 Sep 2008 19:10:16 GMT</pubDate></item><item><title>Ayende Rahien commented on Designing Erlang#</title><description>Will,
  
CCR is on my "to figure out" list for a while now.
  
Can you create a sample pmap using the CCR and share with us? I would be interesting to see how this works.
</description><link>http://ayende.com/3604/designing-erlang#comment13</link><guid>http://ayende.com/3604/designing-erlang#comment13</guid><pubDate>Tue, 23 Sep 2008 16:37:23 GMT</pubDate></item><item><title>Will Smith commented on Designing Erlang#</title><description>Examples of use for large scale:
  
[grids.ucs.indiana.edu/.../...analysis_jan21-07.pdf](http://grids.ucs.indiana.edu/ptliupages/publications/CCRDSSanalysis_jan21-07.pdf)  
[http://www.cs.indiana.edu/~welu/iwmse08-lu.pdf](http://www.cs.indiana.edu/~welu/iwmse08-lu.pdf)  
[www.cs.indiana.edu/.../mcbpel_08_pl_group_talk.ppt](http://www.cs.indiana.edu/~welu/mcbpel_08_pl_group_talk.ppt)  
[http://www.extreme.indiana.edu/multicore/SOX.htm](http://www.extreme.indiana.edu/multicore/SOX.htm)  
  
CCR may not have the isolation you desire.  It seems to be efficient and scales to 10s of thousands of tasks.  The basis is message passing.
  
</description><link>http://ayende.com/3604/designing-erlang#comment12</link><guid>http://ayende.com/3604/designing-erlang#comment12</guid><pubDate>Tue, 23 Sep 2008 14:40:05 GMT</pubDate></item><item><title>Stephen commented on Designing Erlang#</title><description>My naive impression was that instead of pattern matching against incoming messages, in a statically typed language you'd just type every message as a separate class and then do some sort of double dispatch against it.
  
  
e.g. handle(Message m) if m instanceof FirstMessageType this.handle((FirstMessage m), if m instanceof SecondMessageType this.handle((SecondMessage) m) else pass.
  
  
That being said, I've never worked with/studied in-language pattern matching before, so perhaps there is awesomeness that switching just on type would be missing out on.
  
</description><link>http://ayende.com/3604/designing-erlang#comment11</link><guid>http://ayende.com/3604/designing-erlang#comment11</guid><pubDate>Tue, 23 Sep 2008 01:29:39 GMT</pubDate></item><item><title>Igor Tamaschuk commented on Designing Erlang#</title><description>It's really inspiring to finally develop a fluent scheduler framework for long term execution code launched within requests service process (say asp.net)... especially as because I m working on this special solution in the one of my current projects...
</description><link>http://ayende.com/3604/designing-erlang#comment10</link><guid>http://ayende.com/3604/designing-erlang#comment10</guid><pubDate>Mon, 22 Sep 2008 22:31:25 GMT</pubDate></item><item><title>Ayende Rahien commented on Designing Erlang#</title><description>Matthew,
  
The problem here is that it is expected to have hundreds of thousands to millions of processes. Most isolation strategies break down in the mere hundreds
</description><link>http://ayende.com/3604/designing-erlang#comment9</link><guid>http://ayende.com/3604/designing-erlang#comment9</guid><pubDate>Mon, 22 Sep 2008 17:51:58 GMT</pubDate></item><item><title>Will Smith commented on Designing Erlang#</title><description>Couldn't this be based on the MS Robotics CCR?
  
Old article: 
[msdn.microsoft.com/en-us/magazine/cc163556.aspx](http://msdn.microsoft.com/en-us/magazine/cc163556.aspx)  
  
  
</description><link>http://ayende.com/3604/designing-erlang#comment8</link><guid>http://ayende.com/3604/designing-erlang#comment8</guid><pubDate>Mon, 22 Sep 2008 17:33:20 GMT</pubDate></item><item><title>Matthew Podwysocki commented on Designing Erlang#</title><description>I would more look at designing this around the DLR, as it has better ways of handling process separation around the script hosts.  I did a heavier implementation on C# a while ago using AppDomains, because if any given process dies, I have another to watch, clean up and report the problems.
  
  
Matt
</description><link>http://ayende.com/3604/designing-erlang#comment7</link><guid>http://ayende.com/3604/designing-erlang#comment7</guid><pubDate>Mon, 22 Sep 2008 17:32:01 GMT</pubDate></item><item><title>Ayende Rahien commented on Designing Erlang#</title><description>Peter,
  
You don't need fibers, you just need simple execution for the scheduler in user mode.
</description><link>http://ayende.com/3604/designing-erlang#comment6</link><guid>http://ayende.com/3604/designing-erlang#comment6</guid><pubDate>Mon, 22 Sep 2008 16:23:24 GMT</pubDate></item><item><title>Peter Ibbotson commented on Designing Erlang#</title><description>Well if you ever get it off the ground and want the IronErlang(.com|.net|.org) domains I'd  be more than happy to pass them over. I've been way too busy to actually get started.
  
  
I kept on wondering about using fibres for processes but I couldn't convince myself it was worth the trouble.
  
</description><link>http://ayende.com/3604/designing-erlang#comment5</link><guid>http://ayende.com/3604/designing-erlang#comment5</guid><pubDate>Mon, 22 Sep 2008 16:16:18 GMT</pubDate></item><item><title>Mike Brown commented on Designing Erlang#</title><description>Sorry I had changed my message must have ctrl+z'd my change. I was comparing it to how starting a WF instance through an ExternalDataEvent works. You define the workflow and fire it off with a message.
  
  
Of course WF is a bit more heavy weight than your description of Erlang implies and there is the whole multi-threaded thing :P 
</description><link>http://ayende.com/3604/designing-erlang#comment4</link><guid>http://ayende.com/3604/designing-erlang#comment4</guid><pubDate>Mon, 22 Sep 2008 15:30:01 GMT</pubDate></item><item><title>Ayende Rahien commented on Designing Erlang#</title><description>No, that is not how it works.
  
I suggest getting Programming Erlang, it is a great book
</description><link>http://ayende.com/3604/designing-erlang#comment3</link><guid>http://ayende.com/3604/designing-erlang#comment3</guid><pubDate>Mon, 22 Sep 2008 15:23:21 GMT</pubDate></item><item><title>Mike Brown commented on Designing Erlang#</title><description>So basically a function call in Erlang is represented by an object rather than just passing data around on a stack. This sounds interesting to me. Is there a book I can pick up to get started learning this?
</description><link>http://ayende.com/3604/designing-erlang#comment2</link><guid>http://ayende.com/3604/designing-erlang#comment2</guid><pubDate>Mon, 22 Sep 2008 15:07:34 GMT</pubDate></item><item><title>Gilligan commented on Designing Erlang#</title><description>I love it! I always stood in awe at the simplicity of Erlang. I think showing the principles as C# code will allow many others to also see how cool the ideas behind Erlang really is.
</description><link>http://ayende.com/3604/designing-erlang#comment1</link><guid>http://ayende.com/3604/designing-erlang#comment1</guid><pubDate>Mon, 22 Sep 2008 14:47:03 GMT</pubDate></item></channel></rss>