<?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: Replication schemes</title>
	<atom:link href="http://martijn.van.steenbergen.nl/journal/2011/01/16/replication-schemes/feed/" rel="self" type="application/rss+xml" />
	<link>http://martijn.van.steenbergen.nl/journal/2011/01/16/replication-schemes/</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Mon, 13 May 2013 18:02:27 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.1</generator>
	<item>
		<title>By: Martijn</title>
		<link>http://martijn.van.steenbergen.nl/journal/2011/01/16/replication-schemes/#comment-360</link>
		<dc:creator>Martijn</dc:creator>
		<pubDate>Mon, 23 May 2011 11:35:13 +0000</pubDate>
		<guid isPermaLink="false">http://martijn.van.steenbergen.nl/journal/?p=522#comment-360</guid>
		<description>Thank you Twan, that does seem to work. :-)</description>
		<content:encoded><![CDATA[<p>Thank you Twan, that does seem to work. <img src='http://martijn.van.steenbergen.nl/journal/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Martijn</title>
		<link>http://martijn.van.steenbergen.nl/journal/2011/01/16/replication-schemes/#comment-359</link>
		<dc:creator>Martijn</dc:creator>
		<pubDate>Mon, 23 May 2011 11:34:55 +0000</pubDate>
		<guid isPermaLink="false">http://martijn.van.steenbergen.nl/journal/?p=522#comment-359</guid>
		<description>Thanks, Dean! Fixed it.</description>
		<content:encoded><![CDATA[<p>Thanks, Dean! Fixed it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dean Herington</title>
		<link>http://martijn.van.steenbergen.nl/journal/2011/01/16/replication-schemes/#comment-358</link>
		<dc:creator>Dean Herington</dc:creator>
		<pubDate>Wed, 02 Feb 2011 19:13:18 +0000</pubDate>
		<guid isPermaLink="false">http://martijn.van.steenbergen.nl/journal/?p=522#comment-358</guid>
		<description>The following, from your blog entry:

&gt; sizes (between 7 9 . three)
[9,12,15]

didn&#039;t seem right.  Sure enough, with your package:

&gt; sizes (between 7 9 Control.Category.. three)
[21,24,27] </description>
		<content:encoded><![CDATA[<p>The following, from your blog entry:</p>
<p>&gt; sizes (between 7 9 . three)<br />
[9,12,15]</p>
<p>didn&#8217;t seem right.  Sure enough, with your package:</p>
<p>&gt; sizes (between 7 9 Control.Category.. three)<br />
[21,24,27] </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Twan van Laarhoven</title>
		<link>http://martijn.van.steenbergen.nl/journal/2011/01/16/replication-schemes/#comment-357</link>
		<dc:creator>Twan van Laarhoven</dc:creator>
		<pubDate>Sun, 16 Jan 2011 23:02:22 +0000</pubDate>
		<guid isPermaLink="false">http://martijn.van.steenbergen.nl/journal/?p=522#comment-357</guid>
		<description>It seems that `sizes (exactly n)` already needs time quadratic in n. I think this is caused by the call to fmap, there will be n calls to fmap, each of which runs over the entire list of n things. Other things exhibit even worse scaling, such as `sizes (some . some)`

It might be better to do fmap lazily somehow, for example by storing in `Cons` a function that will be applied to the final result. Something like

   data Replicate a b = Nil &#124; forall c. Cons (c -&gt; b) (Maybe c) (Replicate a (a -&gt; c))

I have not yet tried whether this will work.


Also note that a value of type `Replicate a b` is equivalent to a subset of the naturals, plus for each element of this set a function of that many as to b. Your type already tries to capture this, but maybe the function and the subset could be stored separately?</description>
		<content:encoded><![CDATA[<p>It seems that `sizes (exactly n)` already needs time quadratic in n. I think this is caused by the call to fmap, there will be n calls to fmap, each of which runs over the entire list of n things. Other things exhibit even worse scaling, such as `sizes (some . some)`</p>
<p>It might be better to do fmap lazily somehow, for example by storing in `Cons` a function that will be applied to the final result. Something like</p>
<p>   data Replicate a b = Nil | forall c. Cons (c -&gt; b) (Maybe c) (Replicate a (a -&gt; c))</p>
<p>I have not yet tried whether this will work.</p>
<p>Also note that a value of type `Replicate a b` is equivalent to a subset of the naturals, plus for each element of this set a function of that many as to b. Your type already tries to capture this, but maybe the function and the subset could be stored separately?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
