<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Why Erlang ?</title>
	<atom:link href="http://beebole.com/blog/2008/07/24/why-erlang/feed/" rel="self" type="application/rss+xml" />
	<link>http://beebole.com/blog/2008/07/24/why-erlang/</link>
	<description>The voice of BeeBole</description>
	<pubDate>Fri, 21 Nov 2008 10:25:22 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
		<item>
		<title>By: How To Quickly Set Up Ubuntu 8.04 loaded with Erlang, Mochiweb and Nginx &#124; BeeBuzz</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-216</link>
		<dc:creator>How To Quickly Set Up Ubuntu 8.04 loaded with Erlang, Mochiweb and Nginx &#124; BeeBuzz</dc:creator>
		<pubDate>Thu, 25 Sep 2008 09:54:53 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-216</guid>
		<description>[...] say you want to give a try to Erlang (Discover our post about Why Erlang?) for your next web development project and you want to be up and running as quickly as [...]</description>
		<content:encoded><![CDATA[<p>[...] say you want to give a try to Erlang (Discover our post about Why Erlang?) for your next web development project and you want to be up and running as quickly as [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Generate HTML from a JSON Without any Template but HTML and JavaScript &#124; BeeBuzz</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-123</link>
		<dc:creator>Generate HTML from a JSON Without any Template but HTML and JavaScript &#124; BeeBuzz</dc:creator>
		<pubDate>Tue, 02 Sep 2008 10:26:54 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-123</guid>
		<description>[...] We started by choosing a light, flexible and really fast back-end as mentioned in our post: Why Erlang ? [...]</description>
		<content:encoded><![CDATA[<p>[...] We started by choosing a light, flexible and really fast back-end as mentioned in our post: Why Erlang ? [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Web Application on Erlang: So Far, So Good, &#8230; &#124; BeeBuzz</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-121</link>
		<dc:creator>Web Application on Erlang: So Far, So Good, &#8230; &#124; BeeBuzz</dc:creator>
		<pubDate>Tue, 02 Sep 2008 10:07:50 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-121</guid>
		<description>[...] our post Why Erlang ? for more [...]</description>
		<content:encoded><![CDATA[<p>[...] our post Why Erlang ? for more [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Recent Links Tagged With "mochiweb" - JabberTags</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-108</link>
		<dc:creator>Recent Links Tagged With "mochiweb" - JabberTags</dc:creator>
		<pubDate>Sat, 23 Aug 2008 04:15:22 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-108</guid>
		<description>[...] public links &#62;&#62; mochiweb   Why Erlang ? Saved by rottingtreesandgrass on Fri 22-8-2008   Multipart Post with Erlang and Mochiweb Saved by [...]</description>
		<content:encoded><![CDATA[<p>[...] public links &gt;&gt; mochiweb   Why Erlang ? Saved by rottingtreesandgrass on Fri 22-8-2008   Multipart Post with Erlang and Mochiweb Saved by [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hughes</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-61</link>
		<dc:creator>Hughes</dc:creator>
		<pubDate>Thu, 31 Jul 2008 08:40:50 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-61</guid>
		<description>Hey Pierre,

Just a quick comment to stress out that Erlang is definitely as well appropriated for rapid prototyping than for production code.  It's a dynamic language, you can build a server really easily and change it's behavior on the fly.  The functional and stateless nature of the language opens new levels of possibilities. Turning the ideas floating in my head into real code remains a fast process (the last one : merging non-destructively two tree structures took me a little bit more than an hour - still, I had to re-read the 'lists' and 'proplists' modules in order to use some of their useful functions ;).</description>
		<content:encoded><![CDATA[<p>Hey Pierre,</p>
<p>Just a quick comment to stress out that Erlang is definitely as well appropriated for rapid prototyping than for production code.  It&#8217;s a dynamic language, you can build a server really easily and change it&#8217;s behavior on the fly.  The functional and stateless nature of the language opens new levels of possibilities. Turning the ideas floating in my head into real code remains a fast process (the last one : merging non-destructively two tree structures took me a little bit more than an hour - still, I had to re-read the &#8216;lists&#8217; and &#8216;proplists&#8217; modules in order to use some of their useful functions ;).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Pierre</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-59</link>
		<dc:creator>Pierre</dc:creator>
		<pubDate>Wed, 30 Jul 2008 21:11:19 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-59</guid>
		<description>Very interesting Guys! You probably know that I was a fan of Microsoft... BUT I did also some researches to find a good programming language for my personnel Web server. I've play a lot with many different languages and technologies. For me winner is (I never thought say that one day)... WebDynPro Abap. Why? Because of the MVC implementation, data binding, tight integration to the DB and easy language. OK, this is not realist to use a WAS server for my web server :-) ... so I tried to find a solution based on true MVC architecture (where you can handle different views in the same page, link actions to views graphically), a solution that has a very simple data binding...I find no miracle solution. The nearest thing is for me: RUBY + RAILS. Erlang seems made for massive applications, I thought you've chosen a framework/lge more oriented for fast development (easy syntax/ORM/OO...), reliable code, clear separation between business logic and layout (mvc). I'm hungry to heard your next posts (how you deal with the data storage), so I will stay tuned! Good luck for your project ! -&#62; very interesting blog! à la prochaine party OpenHR ;-)</description>
		<content:encoded><![CDATA[<p>Very interesting Guys! You probably know that I was a fan of Microsoft&#8230; BUT I did also some researches to find a good programming language for my personnel Web server. I&#8217;ve play a lot with many different languages and technologies. For me winner is (I never thought say that one day)&#8230; WebDynPro Abap. Why? Because of the MVC implementation, data binding, tight integration to the DB and easy language. OK, this is not realist to use a WAS server for my web server <img src='http://beebole.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> &#8230; so I tried to find a solution based on true MVC architecture (where you can handle different views in the same page, link actions to views graphically), a solution that has a very simple data binding&#8230;I find no miracle solution. The nearest thing is for me: RUBY + RAILS. Erlang seems made for massive applications, I thought you&#8217;ve chosen a framework/lge more oriented for fast development (easy syntax/ORM/OO&#8230;), reliable code, clear separation between business logic and layout (mvc). I&#8217;m hungry to heard your next posts (how you deal with the data storage), so I will stay tuned! Good luck for your project ! -&gt; very interesting blog! à la prochaine party OpenHR <img src='http://beebole.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 3000 &#124; BeeBuzz</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-55</link>
		<dc:creator>3000 &#124; BeeBuzz</dc:creator>
		<pubDate>Sun, 27 Jul 2008 04:36:25 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-55</guid>
		<description>[...] 3000 is the number of unique visitors, in two days, who read our last post: Why Erlang ? [...]</description>
		<content:encoded><![CDATA[<p>[...] 3000 is the number of unique visitors, in two days, who read our last post: Why Erlang ? [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alain O'Dea</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-53</link>
		<dc:creator>Alain O'Dea</dc:creator>
		<pubDate>Sat, 26 Jul 2008 02:24:39 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-53</guid>
		<description>@Blaxter

I have done some interfacing of Erlang and Ruby to make it possible for http://github.com/AlainODea/erlang_code_completion/tree/master to get code completion results to TextMate. I originally used TCP, but found it slow and cumbersome compared to erl_call.

I want to make this point very clearly, erl_call is solid gold. Become acquainted with it if you intend to interface with Erlang easily. It is very fast and provides a good way of interacting with Erlang from other languages lacking a formal integration like JInterface or Erl_Interface.

A Ruby wrapper for erl_call would be very useful. I might bring myself to write such a beast and post it up to GitHub if I get a chance.

Having erl_call in the main bin directory of the Erlang distribution instead of buried inside the erl_interface library would also be useful. You can have erl_call start an Erlang node on demand or execute code from the command-line or STDIN on an existing node using RPC. It is superbly useful. Check out my usage of it in erlang_code_completion to see if it helps solve your problem.</description>
		<content:encoded><![CDATA[<p>@Blaxter</p>
<p>I have done some interfacing of Erlang and Ruby to make it possible for <a href="http://github.com/AlainODea/erlang_code_completion/tree/master" rel="nofollow">http://github.com/AlainODea/erlang_code_completion/tree/master</a> to get code completion results to TextMate. I originally used TCP, but found it slow and cumbersome compared to erl_call.</p>
<p>I want to make this point very clearly, erl_call is solid gold. Become acquainted with it if you intend to interface with Erlang easily. It is very fast and provides a good way of interacting with Erlang from other languages lacking a formal integration like JInterface or Erl_Interface.</p>
<p>A Ruby wrapper for erl_call would be very useful. I might bring myself to write such a beast and post it up to GitHub if I get a chance.</p>
<p>Having erl_call in the main bin directory of the Erlang distribution instead of buried inside the erl_interface library would also be useful. You can have erl_call start an Erlang node on demand or execute code from the command-line or STDIN on an existing node using RPC. It is superbly useful. Check out my usage of it in erlang_code_completion to see if it helps solve your problem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: hughes</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-51</link>
		<dc:creator>hughes</dc:creator>
		<pubDate>Fri, 25 Jul 2008 07:34:38 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-51</guid>
		<description>@SecretNeko

Regarding the syntax, there are certainly some areas of improvement. Becoming more comfortable with the language, I consider this less and less as a real problem.

Overall,  the code looks clear and well structured.  Most importantly, I was really surprised to see how easy it was to re-enter my code after 1 month off. Even with my short experience with the language I came back in quite smoothly to enhance my prototype (yes, we jumped on the road to the Prod highway ;).

One of the key point is to make the -pattern matching feature- a second nature.


@Rich

I'm going to dedicate an entire post on that matter.  I'll explain how we use Mnesia ( http://www.erlang.org/doc/apps/mnesia/part_frame.html ) and why we are keeping an eye on the CouchDB project (as mentioned in the post, we are already massively using Json as our 'communication protocol' between the browser and the server).

In brief,  in order to keep as much flexibility as possible in our model and to benefit from the native Erlang data structure, we decided to go without a traditional relational model.

What?  No objects, no relational DB?  Are you crazy?

As things goes, I'll explain why it's not as crazy as it may sound when it comes to play with DB documents and not just tables linked to each other.</description>
		<content:encoded><![CDATA[<p>@SecretNeko</p>
<p>Regarding the syntax, there are certainly some areas of improvement. Becoming more comfortable with the language, I consider this less and less as a real problem.</p>
<p>Overall,  the code looks clear and well structured.  Most importantly, I was really surprised to see how easy it was to re-enter my code after 1 month off. Even with my short experience with the language I came back in quite smoothly to enhance my prototype (yes, we jumped on the road to the Prod highway ;).</p>
<p>One of the key point is to make the -pattern matching feature- a second nature.</p>
<p>@Rich</p>
<p>I&#8217;m going to dedicate an entire post on that matter.  I&#8217;ll explain how we use Mnesia ( <a href="http://www.erlang.org/doc/apps/mnesia/part_frame.html" rel="nofollow">http://www.erlang.org/doc/apps/mnesia/part_frame.html</a> ) and why we are keeping an eye on the CouchDB project (as mentioned in the post, we are already massively using Json as our &#8216;communication protocol&#8217; between the browser and the server).</p>
<p>In brief,  in order to keep as much flexibility as possible in our model and to benefit from the native Erlang data structure, we decided to go without a traditional relational model.</p>
<p>What?  No objects, no relational DB?  Are you crazy?</p>
<p>As things goes, I&#8217;ll explain why it&#8217;s not as crazy as it may sound when it comes to play with DB documents and not just tables linked to each other.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rich</title>
		<link>http://beebole.com/blog/2008/07/24/why-erlang/#comment-49</link>
		<dc:creator>Rich</dc:creator>
		<pubDate>Thu, 24 Jul 2008 22:26:42 +0000</pubDate>
		<guid isPermaLink="false">http://beebole.com/blog/?p=55#comment-49</guid>
		<description>One thing that always interests me as well when I see people using Lisp/Haskell/Erlang for developing what is a business application like this with a rich domain model is what you are using for persistence.  In the Java and C# world you have Hibernate and NHibernate and other ORM tools.  In Ruby and other scriptiong languages you have some implementation of the active object pattern.  But I'm curious what you use in Erlang.  I've looked at stuff for Haskell and been somewhat let down that there wasn't anything that seemed production ready.  Is it a different story for Erlang?

Probably the biggest thing that I'd need to wrap my brain around in any case is how, since all your variables/objects/etc. are immutable, do you go about updating the database (or whatever you use as a persistent storage mechanism)?  I've never seen issues like this discussed in much detail, which is unfortunate since most of the web apps I've seen out there at least start off with nothing more than slightly glorified CRUD functionality.</description>
		<content:encoded><![CDATA[<p>One thing that always interests me as well when I see people using Lisp/Haskell/Erlang for developing what is a business application like this with a rich domain model is what you are using for persistence.  In the Java and C# world you have Hibernate and NHibernate and other ORM tools.  In Ruby and other scriptiong languages you have some implementation of the active object pattern.  But I&#8217;m curious what you use in Erlang.  I&#8217;ve looked at stuff for Haskell and been somewhat let down that there wasn&#8217;t anything that seemed production ready.  Is it a different story for Erlang?</p>
<p>Probably the biggest thing that I&#8217;d need to wrap my brain around in any case is how, since all your variables/objects/etc. are immutable, do you go about updating the database (or whatever you use as a persistent storage mechanism)?  I&#8217;ve never seen issues like this discussed in much detail, which is unfortunate since most of the web apps I&#8217;ve seen out there at least start off with nothing more than slightly glorified CRUD functionality.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
