<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Alexey Zakhlestins blog &#187; haskell</title>
	<atom:link href="http://blog.milkfarmsoft.com/category/computers/programming/haskell/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.milkfarmsoft.com</link>
	<description>Programming for Mac and Web</description>
	<lastBuildDate>Sun, 13 Jun 2010 15:42:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com" />
	<atom:link rel="hub" href="http://superfeedr.com/hubbub" />
			<item>
		<title>Alligator Eggs!</title>
		<link>http://blog.milkfarmsoft.com/2007/10/alligator-eggs/</link>
		<comments>http://blog.milkfarmsoft.com/2007/10/alligator-eggs/#comments</comments>
		<pubDate>Mon, 01 Oct 2007 09:11:43 +0000</pubDate>
		<dc:creator>indeyets</dc:creator>
				<category><![CDATA[D language]]></category>
		<category><![CDATA[haskell]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://blog.milkfarmsoft.com/?p=70</guid>
		<description><![CDATA[<p>Alligator Eggs!</p>
<p>This is the funniest introduction to lambda-calculus ever. (saw it at #d channel <span style="color:#777"> . . . &#8594; Read More: <a href="http://blog.milkfarmsoft.com/2007/10/alligator-eggs/">Alligator Eggs!</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://worrydream.com/AlligatorEggs/">Alligator Eggs!</a></p>
<p>This is the funniest introduction to lambda-calculus ever. (saw it at #d channel at freenode)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.milkfarmsoft.com/2007/10/alligator-eggs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unicode vs. Programming Languages</title>
		<link>http://blog.milkfarmsoft.com/2007/07/unicode-vs-programming-languages/</link>
		<comments>http://blog.milkfarmsoft.com/2007/07/unicode-vs-programming-languages/#comments</comments>
		<pubDate>Thu, 26 Jul 2007 13:40:14 +0000</pubDate>
		<dc:creator>indeyets</dc:creator>
				<category><![CDATA[D language]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[computers]]></category>
		<category><![CDATA[haskell]]></category>
		<category><![CDATA[haxe]]></category>
		<category><![CDATA[neko]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[smalltalk]]></category>

		<guid isPermaLink="false">http://blog.milkfarmsoft.com/?p=63</guid>
		<description><![CDATA[<p>I really-really want to see a programming language, which allows using proper unicode symbols for operators.</p>
<p>I mean:</p>

Ã— instead of *
â†’ instead of ->
â† instead if &#60;-
â‰  instrad of !=
â‰¤ and â‰¥ instead of &#60;= and >=

<p>This list can be continued more and moreâ€¦</p>
<p>I perfectly understand the roots of current situation and I don&#8217;t ask to use <span style="color:#777"> . . . &#8594; Read More: <a href="http://blog.milkfarmsoft.com/2007/07/unicode-vs-programming-languages/">Unicode vs. Programming Languages</a></span>]]></description>
			<content:encoded><![CDATA[<p>I really-really want to see a programming language, which allows using proper unicode symbols for operators.</p>
<p>I mean:</p>
<ul>
<li><strong>Ã—</strong> instead of <strong>*</strong></li>
<li><strong>â†’</strong> instead of <strong>-></strong></li>
<li><strong>â†</strong> instead if <strong>&lt;-</strong></li>
<li><strong>â‰ </strong> instrad of <strong>!=</strong></li>
<li><strong>â‰¤</strong> and <strong>â‰¥</strong> instead of <strong>&lt;=</strong> and <strong>>=</strong></li>
</ul>
<p>This list can be continued more and moreâ€¦</p>
<p>I perfectly understand the roots of current situation and I don&#8217;t ask to use ONLY unicode-symbols, but I ask language-manufacturers to allow this.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.milkfarmsoft.com/2007/07/unicode-vs-programming-languages/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>on documentation</title>
		<link>http://blog.milkfarmsoft.com/2006/12/on-documentation/</link>
		<comments>http://blog.milkfarmsoft.com/2006/12/on-documentation/#comments</comments>
		<pubDate>Tue, 12 Dec 2006 12:28:53 +0000</pubDate>
		<dc:creator>indeyets</dc:creator>
				<category><![CDATA[haskell]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.milkfarmsoft.com/?p=29</guid>
		<description><![CDATA[<p>People often debate on reasons of PHP&#8217;s success and &#8220;not so big success&#8221; of it&#8217;s more powerful competitors. My belief is, that one of the major parts of PHP&#8217;s win was it&#8217;s manual. All of the competitors had basic API documentation, but they didn&#8217;t have:</p>

syntax-highlighted examples for the majority of functions
user-contributed comments

<p>It&#8217;s actually getting better now <span style="color:#777"> . . . &#8594; Read More: <a href="http://blog.milkfarmsoft.com/2006/12/on-documentation/">on documentation</a></span>]]></description>
			<content:encoded><![CDATA[<p>People often debate on reasons of PHP&#8217;s success and &#8220;not so big success&#8221; of it&#8217;s more powerful competitors. My belief is, that one of the major parts of PHP&#8217;s win was it&#8217;s <a href="http://www.php.net/manual/en/index.php">manual</a>. All of the competitors had basic API documentation, but they didn&#8217;t have:</p>
<ul>
<li>syntax-highlighted examples for the majority of functions</li>
<li>user-contributed comments</li>
</ul>
<p>It&#8217;s actually getting better now (see documentation on <a href="http://rubymanual.org/class/CGI">Ruby&#8217;s CGI module</a>, for example). But no-one is close enough.</p>
<p>One of the main concerns of the language core-team should be documentation. Better the docs are, more people will be comfortable to start using it for solving their problems.</p>
<p>If I have several weeks for digging into sources, I will probably chose the language which I like syntactically. But if the timeframe if small, I would definitely prefer the one which has better docs. Guess which situation tends to happen more often.</p>
<p>Something to think about:</p>
<ul>
<li><a href="http://www.php.net/manual/en/index.php">PHP Manual</a></li>
<li><a href="http://docs.python.org/lib/lib.html">Python Manual</a></li>
<li><a href="http://rubymanual.org/">Ruby Manual</a></li>
<li><a href="http://haskell.org/ghc/docs/latest/html/libraries/">Haskell Manual</a></li>
<li><a href="http://www.perl.com/pub/q/documentation">Perl Manual</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.milkfarmsoft.com/2006/12/on-documentation/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>trac for haskell</title>
		<link>http://blog.milkfarmsoft.com/2006/12/trac-for-haskell/</link>
		<comments>http://blog.milkfarmsoft.com/2006/12/trac-for-haskell/#comments</comments>
		<pubDate>Mon, 11 Dec 2006 20:49:11 +0000</pubDate>
		<dc:creator>indeyets</dc:creator>
				<category><![CDATA[haskell]]></category>

		<guid isPermaLink="false">http://blog.milkfarmsoft.com/?p=28</guid>
		<description><![CDATA[<p>Trac is one of the best things which happened to open-source software. But that is not news, really.</p>
<p>The good news is, that haskell software community started to adopt Trac for their needs too. One of the examples is MissingH library. The reason of &#8220;tracification&#8221; is simple: there is a stable darcs plugin available <span style="color:#777"> . . . &#8594; Read More: <a href="http://blog.milkfarmsoft.com/2006/12/trac-for-haskell/">trac for haskell</a></span>]]></description>
			<content:encoded><![CDATA[<p>Trac is one of the best things which happened to open-source software. But that is not news, really.</p>
<p>The good news is, that haskell software community started to adopt Trac for their needs too. One of the examples is <a href="http://software.complete.org/missingh/wiki">MissingH</a> library. The reason of &#8220;tracification&#8221; is simple: there is a stable <a href="http://progetti.arstecnica.it/trac+darcs/wiki/DarcsPlugin">darcs plugin</a> available for trac</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.milkfarmsoft.com/2006/12/trac-for-haskell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>nice article about monads</title>
		<link>http://blog.milkfarmsoft.com/2006/11/nice-article-about-monads/</link>
		<comments>http://blog.milkfarmsoft.com/2006/11/nice-article-about-monads/#comments</comments>
		<pubDate>Sat, 25 Nov 2006 16:35:13 +0000</pubDate>
		<dc:creator>indeyets</dc:creator>
				<category><![CDATA[haskell]]></category>

		<guid isPermaLink="false">http://blog.milkfarmsoft.com/?p=22</guid>
		<description><![CDATA[<p>Understanding of monads is an iterative process.. At one moment you think you understand them good enough, and the very next moment you know that everything you know is wrong.</p>
<p>So, one more good article for the <span style="color:#777"> . . . &#8594; Read More: <a href="http://blog.milkfarmsoft.com/2006/11/nice-article-about-monads/">nice article about monads</a></span>]]></description>
			<content:encoded><![CDATA[<p>Understanding of monads is an iterative process.. At one moment you think you understand them good enough, and the very next moment you know that everything you know is wrong.</p>
<p>So, <a href="http://www.linuxjournal.com/article/8850">one more good article</a> for the next iteration</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.milkfarmsoft.com/2006/11/nice-article-about-monads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Hello world!&#8221; in Haskell</title>
		<link>http://blog.milkfarmsoft.com/2006/07/hello-world-in-haskell/</link>
		<comments>http://blog.milkfarmsoft.com/2006/07/hello-world-in-haskell/#comments</comments>
		<pubDate>Thu, 27 Jul 2006 15:39:23 +0000</pubDate>
		<dc:creator>indeyets</dc:creator>
				<category><![CDATA[haskell]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://blog.milkfarmsoft.com/?p=8</guid>
		<description><![CDATA[<p>Everyone wants &#8220;hello world&#8221; application for being convinced, that the thing can work. Here is one written in Haskell and web-related. It&#8217;s quite straight-forward:</p>

import Network.FastCGI
import Text.XHtml

htmlPage
  = header
    &#60;&#60; thetitle
      &#60;&#60; "Hello World!"
  +++ body ! [ bgcolor "white"] &#60;&#60; "Hi"

main = runFastCGIorCGI (output (renderHtml htmlPage))

<p>To <span style="color:#777"> . . . &#8594; Read More: <a href="http://blog.milkfarmsoft.com/2006/07/hello-world-in-haskell/">&#8220;Hello world!&#8221; in Haskell</a></span>]]></description>
			<content:encoded><![CDATA[<p>Everyone wants &#8220;hello world&#8221; application for being convinced, that the thing can work. Here is one written in Haskell and web-related. It&#8217;s quite straight-forward:</p>
<pre style="border:solid 1px gray">
import Network.FastCGI
import Text.XHtml

htmlPage
  = header
    &lt;&lt; thetitle
      &lt;&lt; "Hello World!"
  +++ body ! [ bgcolor "white"] &lt;&lt; "Hi"

main = runFastCGIorCGI (output (renderHtml htmlPage))
</pre>
<p>To make it working, you need <a href="http://www.haskell.org/ghc/">GHC</a> and <a href="http://www.cs.chalmers.se/~bringert/darcs/haskell-fastcgi/doc/">fastcgi</a> library (with all it&#8217;s dependencies)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.milkfarmsoft.com/2006/07/hello-world-in-haskell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>status update</title>
		<link>http://blog.milkfarmsoft.com/2006/07/status-update/</link>
		<comments>http://blog.milkfarmsoft.com/2006/07/status-update/#comments</comments>
		<pubDate>Thu, 27 Jul 2006 09:58:40 +0000</pubDate>
		<dc:creator>indeyets</dc:creator>
				<category><![CDATA[haskell]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://blog.milkfarmsoft.com/?p=7</guid>
		<description><![CDATA[<p>I am sorry for not blogging anything, lately. Basically I was too busy coding different stuff for money.  </p>
<p>Now, that I finally finished all the important stuff I will continue writing here. My main points of interest, for now, are:</p>

PHP 5.2 (looking forward to speed optimizations, json and filter)
Pake
Symfony (I am currently involved in a <span style="color:#777"> . . . &#8594; Read More: <a href="http://blog.milkfarmsoft.com/2006/07/status-update/">status update</a></span>]]></description>
			<content:encoded><![CDATA[<p>I am sorry for not blogging anything, lately. Basically I was too busy coding different stuff for money. <img src='http://blog.milkfarmsoft.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Now, that I finally finished all the important stuff I will continue writing here. My main points of interest, for now, are:</p>
<ul>
<li><a href="http://oss.backendmedia.com/PhP52">PHP 5.2</a> (looking forward to speed optimizations, json and filter)</li>
<li><a href="http://www.pake-project.com/">Pake</a></li>
<li><a href="http://www.symfony-project.com/">Symfony</a> (I am currently involved in a symfony-based project)</li>
<li><a href="http://www.haskell.org/">Haskell</a> (<abbr title="Functional Programming">FP</abbr> is applicable to web-stuff and is damn elegant)</li>
</ul>
<p>p.s. (about Haskellâ€¦) I actually find myself, lately, insisting on the clean separation of logical part of web-application and IO stuff. The approach is similiar to the recently overhyped <abbr title="Model View Controller">MVC</abbr> paradigm. While such approach takes some effort to achieve in PHP, in the pure functional languages (such as Haskell) this distinction is more than natural. You do all the data-crunching and concatenation stuff in the first layer of your applpication and interact with outer world using the IO <a href="http://en.wikipedia.org/wiki/Monads_in_functional_programming">monad</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.milkfarmsoft.com/2006/07/status-update/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
