<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: OCaml Web Sites</title>
	<atom:link href="http://www.nicollet.net/2009/02/ocaml-web-sites/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.nicollet.net/2009/02/ocaml-web-sites/</link>
	<description>Everyone Loves Me</description>
	<lastBuildDate>Sat, 11 Feb 2012 18:59:19 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
	<item>
		<title>By: Victor Nicollet</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-256148</link>
		<dc:creator>Victor Nicollet</dc:creator>
		<pubDate>Fri, 27 Jan 2012 16:06:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-256148</guid>
		<description>Keep in mind that the article you are replying to has been written three years ago - and two years before Ocsigen 2 came out. I find the new version to be greatly improved, and of far greater technical maturity than was the case years ago. 

But I still wouldn&#039;t use it on a large projet (and, as a matter of fact, I am not using it on my current OCaml-based large project), for several reasons. I guess I should post my updated views on Ocsigen one of these days.</description>
		<content:encoded><![CDATA[<p>Keep in mind that the article you are replying to has been written three years ago &#8211; and two years before Ocsigen 2 came out. I find the new version to be greatly improved, and of far greater technical maturity than was the case years ago. </p>
<p>But I still wouldn&#8217;t use it on a large projet (and, as a matter of fact, I am not using it on my current OCaml-based large project), for several reasons. I guess I should post my updated views on Ocsigen one of these days.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cago</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-256141</link>
		<dc:creator>cago</dc:creator>
		<pubDate>Fri, 27 Jan 2012 15:58:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-256141</guid>
		<description>Ocsigen is really awesome. Now with js_of_ocaml, you can do amazing stuff like an &lt;a href=&quot;http://try.ocamlpro.com/&quot; rel=&quot;nofollow&quot;&gt;online toplevel&lt;/a&gt; written in OCaml and compiled in js code. 
Look also to the new &lt;a href=&quot;http://ocsigen.org/js_of_ocaml/files/hyperbolic/index.html&quot; rel=&quot;nofollow&quot;&gt;hyperbolic three viewer&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p>Ocsigen is really awesome. Now with js_of_ocaml, you can do amazing stuff like an <a href="http://try.ocamlpro.com/" rel="nofollow">online toplevel</a> written in OCaml and compiled in js code.<br />
Look also to the new <a href="http://ocsigen.org/js_of_ocaml/files/hyperbolic/index.html" rel="nofollow">hyperbolic three viewer</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Objective Caml Web Programming</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-46922</link>
		<dc:creator>Objective Caml Web Programming</dc:creator>
		<pubDate>Thu, 17 Feb 2011 12:22:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-46922</guid>
		<description>[...] years ago, I discussed the topic of using Objective Caml for web programming: What would happen if a compact web framework were proposed? One that, in addition to borrowing [...]</description>
		<content:encoded><![CDATA[<p>[...] years ago, I discussed the topic of using Objective Caml for web programming: What would happen if a compact web framework were proposed? One that, in addition to borrowing [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: wicketmax</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-37893</link>
		<dc:creator>wicketmax</dc:creator>
		<pubDate>Sun, 17 Oct 2010 13:26:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-37893</guid>
		<description>I want to  learn ocsigen,but it lack of document writed by chinese.</description>
		<content:encoded><![CDATA[<p>I want to  learn ocsigen,but it lack of document writed by chinese.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Guillaume Yziquel</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-17710</link>
		<dc:creator>Guillaume Yziquel</dc:creator>
		<pubDate>Mon, 18 Jan 2010 21:06:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-17710</guid>
		<description>I believe that the Ocsigen server and the Eliom framework are simply fantastic. The OCaml/Ocsigen community is somehow too focused (in my opinion) on producing statically typed valid (X)HTML. But you can insert raw HTML if you wish to simplify quick development.

Then, to build a web application that is highly interactive, you can do really cool stuff with Lwt and the React module. In my case, the web app was handling interaction with an Asterisk server, and was used to automate dialing. Agents would use log into a webpage, connect with their softfone with the Asterisk server, and the webapp was administrating everything, automating calls coming in and out, and handling dynamically with (statically typed) ExtJS the status and outcome of phone calls. And there was another similar webpage for the administrator. All this was fully reactive (An agent event or an Asterisk event or an administrator event usually hd an impact on both Asterisk, the agent&#039;s webpage and the administrator&#039;s webpage), and happening mostly in RAM. The DB was just to memorise what was going on, and was not the heart of a state machine, as is too often the case...

Everything was done in a functional and reactive way. Took me two weeks, only evenings, to develop that.

Somehow, even a Ruby on Rails app is a state machine. Perhaps a &quot;better state machine&quot;, but a state machine nonetheless, in the sense that incoming requests interact with each other by modifying the internal data.

With Ocsigen / Eliom, it&#039;s completely different: it&#039;s a &quot;safely&quot; multithreaded, compiled, application. And that makes all the difference.

Besides, there&#039;s O&#039;Browser, which is an OCaml bytecode machine that is interpreted in Javascript. Meaning that you can run OCaml code in the browser. What would be cool is to have cool javascript libraries such as ExtJS binded to O&#039;Browser: you could use really high abstraction for windowing, etc...

Much has been done for browser-side technology. On server-side, somehow, the &quot;state machine&quot; paradigm has been a hindrance. To some extent, Ocsigen and Eliom fixes that when using high level stuff such as React.

I really think you should have a look at Ocsigen / Eliom / Lwt / React and write another post after that. There are some caveats, and a steep learning curve, but overall, it&#039;s really impressive.</description>
		<content:encoded><![CDATA[<p>I believe that the Ocsigen server and the Eliom framework are simply fantastic. The OCaml/Ocsigen community is somehow too focused (in my opinion) on producing statically typed valid (X)HTML. But you can insert raw HTML if you wish to simplify quick development.</p>
<p>Then, to build a web application that is highly interactive, you can do really cool stuff with Lwt and the React module. In my case, the web app was handling interaction with an Asterisk server, and was used to automate dialing. Agents would use log into a webpage, connect with their softfone with the Asterisk server, and the webapp was administrating everything, automating calls coming in and out, and handling dynamically with (statically typed) ExtJS the status and outcome of phone calls. And there was another similar webpage for the administrator. All this was fully reactive (An agent event or an Asterisk event or an administrator event usually hd an impact on both Asterisk, the agent&#8217;s webpage and the administrator&#8217;s webpage), and happening mostly in RAM. The DB was just to memorise what was going on, and was not the heart of a state machine, as is too often the case&#8230;</p>
<p>Everything was done in a functional and reactive way. Took me two weeks, only evenings, to develop that.</p>
<p>Somehow, even a Ruby on Rails app is a state machine. Perhaps a &#8220;better state machine&#8221;, but a state machine nonetheless, in the sense that incoming requests interact with each other by modifying the internal data.</p>
<p>With Ocsigen / Eliom, it&#8217;s completely different: it&#8217;s a &#8220;safely&#8221; multithreaded, compiled, application. And that makes all the difference.</p>
<p>Besides, there&#8217;s O&#8217;Browser, which is an OCaml bytecode machine that is interpreted in Javascript. Meaning that you can run OCaml code in the browser. What would be cool is to have cool javascript libraries such as ExtJS binded to O&#8217;Browser: you could use really high abstraction for windowing, etc&#8230;</p>
<p>Much has been done for browser-side technology. On server-side, somehow, the &#8220;state machine&#8221; paradigm has been a hindrance. To some extent, Ocsigen and Eliom fixes that when using high level stuff such as React.</p>
<p>I really think you should have a look at Ocsigen / Eliom / Lwt / React and write another post after that. There are some caveats, and a steep learning curve, but overall, it&#8217;s really impressive.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-3052</link>
		<dc:creator>Alex</dc:creator>
		<pubDate>Wed, 11 Feb 2009 20:59:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-3052</guid>
		<description>I don&#039;t know enough about Ocsigen/Eliom to argue that, but do you consider sane handling of extreme error cases a requirement for e.g. beginner friendliness? Or is this concern independet of you question regarding the lack of interest in OCaml as a web development language?</description>
		<content:encoded><![CDATA[<p>I don&#8217;t know enough about Ocsigen/Eliom to argue that, but do you consider sane handling of extreme error cases a requirement for e.g. beginner friendliness? Or is this concern independet of you question regarding the lack of interest in OCaml as a web development language?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Boris</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-3049</link>
		<dc:creator>Boris</dc:creator>
		<pubDate>Wed, 11 Feb 2009 18:56:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-3049</guid>
		<description>Sorry for the downtime of ocsigen.org, the server hosting the site is *very* capricious...</description>
		<content:encoded><![CDATA[<p>Sorry for the downtime of ocsigen.org, the server hosting the site is *very* capricious&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Victor Nicollet</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-3041</link>
		<dc:creator>Victor Nicollet</dc:creator>
		<pubDate>Wed, 11 Feb 2009 11:00:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-3041</guid>
		<description>My main problem with Ocsigen (actually, with Eliom) is that it tries very hard to hide the basic principles of the web behind an abstraction. I find myself regularly wondering how the system would handle an exceptional situation that goes beyond its abstraction (the server hardware dies in the middle of a persistent data commit, the user loads several pages at the same time or simply fails to reconnect). 

Objective Caml tends to be a &quot;safe&quot; language in that it shields the user from a lot of chaff to concentrate on the relevant concepts, but the downside is that developers are not accustomed to defend themselves against chaff that the language simply cannot shield them from.</description>
		<content:encoded><![CDATA[<p>My main problem with Ocsigen (actually, with Eliom) is that it tries very hard to hide the basic principles of the web behind an abstraction. I find myself regularly wondering how the system would handle an exceptional situation that goes beyond its abstraction (the server hardware dies in the middle of a persistent data commit, the user loads several pages at the same time or simply fails to reconnect). </p>
<p>Objective Caml tends to be a &#8220;safe&#8221; language in that it shields the user from a lot of chaff to concentrate on the relevant concepts, but the downside is that developers are not accustomed to defend themselves against chaff that the language simply cannot shield them from.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-3040</link>
		<dc:creator>Alex</dc:creator>
		<pubDate>Wed, 11 Feb 2009 10:40:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-3040</guid>
		<description>Ah ok, curious to see, what you&#039;ll write when you can access Ocsigen&#039;s page. 

Regarding your &quot;what if&quot; question, I don&#039;t think much would happen. The OCaml community is too &quot;silent&quot; (in a good _and_ in a bad sense) to be much of a match against the Ruby, Python, PHP etc. communities.

If you&#039;re accustomed to the buzz and polished presentation of before mentioned communities, you&#039;d have to think that OCaml died somewhere around the mid nineties.</description>
		<content:encoded><![CDATA[<p>Ah ok, curious to see, what you&#8217;ll write when you can access Ocsigen&#8217;s page. </p>
<p>Regarding your &#8220;what if&#8221; question, I don&#8217;t think much would happen. The OCaml community is too &#8220;silent&#8221; (in a good _and_ in a bad sense) to be much of a match against the Ruby, Python, PHP etc. communities.</p>
<p>If you&#8217;re accustomed to the buzz and polished presentation of before mentioned communities, you&#8217;d have to think that OCaml died somewhere around the mid nineties.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Victor Nicollet</title>
		<link>http://www.nicollet.net/2009/02/ocaml-web-sites/comment-page-1/#comment-3039</link>
		<dc:creator>Victor Nicollet</dc:creator>
		<pubDate>Wed, 11 Feb 2009 09:15:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.nicollet.net/?p=450#comment-3039</guid>
		<description>I would have mentioned it. But the link didn&#039;t seem to load on my computer and I didn&#039;t want to post a dead link.  Maybe I&#039;ll edit the post if I manage to load it.</description>
		<content:encoded><![CDATA[<p>I would have mentioned it. But the link didn&#8217;t seem to load on my computer and I didn&#8217;t want to post a dead link.  Maybe I&#8217;ll edit the post if I manage to load it.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

