<?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: The missing sources part 2</title>
	<atom:link href="http://www.mozzarellaincarrozza.it/harbour/the-missing-sources-part-2/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mozzarellaincarrozza.it/harbour/the-missing-sources-part-2/</link>
	<description>From Clipper 87 to Harbour running on... everything</description>
	<lastBuildDate>Thu, 15 Jan 2015 22:01:42 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.3</generator>
	<item>
		<title>By: Francesco</title>
		<link>http://www.mozzarellaincarrozza.it/harbour/the-missing-sources-part-2/#comment-237</link>
		<dc:creator><![CDATA[Francesco]]></dc:creator>
		<pubDate>Thu, 15 Jan 2015 22:01:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.mozzarellaincarrozza.it/harbour/?p=137#comment-237</guid>
		<description><![CDATA[Thanks Maurizio.

Yes, programming isn&#039;t an exact science. And infact aMaxStrLen can be written in different ways... it would be nice to list some of them and analyze which is the best for speed and/or readability...

I will comment on my version of the code in a dedicated post.]]></description>
		<content:encoded><![CDATA[<p>Thanks Maurizio.</p>
<p>Yes, programming isn&#8217;t an exact science. And infact aMaxStrLen can be written in different ways&#8230; it would be nice to list some of them and analyze which is the best for speed and/or readability&#8230;</p>
<p>I will comment on my version of the code in a dedicated post.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Maurizio la Cecilia</title>
		<link>http://www.mozzarellaincarrozza.it/harbour/the-missing-sources-part-2/#comment-236</link>
		<dc:creator><![CDATA[Maurizio la Cecilia]]></dc:creator>
		<pubDate>Thu, 15 Jan 2015 16:27:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.mozzarellaincarrozza.it/harbour/?p=137#comment-236</guid>
		<description><![CDATA[Hi Francesco,
really an interesting and well done blog. A clear and comprehensive path to obtain an effective port.

About your csrput() ported version I think that:
1. the SAY &quot;&quot; is unnecessary and you can omit it at all;
2. the @ y,x is always pre-processed to SetPos(  y, x );
3. the original FuncKy function returns NIL.
So, I suggest this code:
[code]
FUNCTION csrput( y, x )
   SetPos( y, x )
   return nil
[/code]
In addition, here is my ancient version of aMaxStrLen(), just to show that programming isn&#039;t an exact science:
[code]
FUNCTION aMaxStrLen( aArr )

   LOCAL nMaxLen := 0

   AEval( aArr, { &#124; e &#124; nMaxLen := Max( nMaxLen, IIf( HB_IsString( e ), Len( e ), 0 ) ) } )
   RETURN nMaxLen
[/code]
Waiting for the next post.
Thanks a lot.
Maurizio]]></description>
		<content:encoded><![CDATA[<p>Hi Francesco,<br />
really an interesting and well done blog. A clear and comprehensive path to obtain an effective port.</p>
<p>About your csrput() ported version I think that:<br />
1. the SAY &#8220;&#8221; is unnecessary and you can omit it at all;<br />
2. the @ y,x is always pre-processed to SetPos(  y, x );<br />
3. the original FuncKy function returns NIL.<br />
So, I suggest this code:</p>
<pre class="brush: plain; title: ; notranslate">
FUNCTION csrput( y, x )
   SetPos( y, x )
   return nil
</pre>
<p>In addition, here is my ancient version of aMaxStrLen(), just to show that programming isn&#8217;t an exact science:</p>
<pre class="brush: plain; title: ; notranslate">
FUNCTION aMaxStrLen( aArr )

   LOCAL nMaxLen := 0

   AEval( aArr, { | e | nMaxLen := Max( nMaxLen, IIf( HB_IsString( e ), Len( e ), 0 ) ) } )
   RETURN nMaxLen
</pre>
<p>Waiting for the next post.<br />
Thanks a lot.<br />
Maurizio</p>
]]></content:encoded>
	</item>
</channel>
</rss>
