<?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: C:  Portable Macro Assembler</title>
	<atom:link href="http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/</link>
	<description>...so google can index my head.</description>
	<lastBuildDate>Thu, 02 Sep 2010 06:25:06 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Jordan Hubbard</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-76752</link>
		<dc:creator>Jordan Hubbard</dc:creator>
		<pubDate>Thu, 22 Feb 2007 01:10:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-76752</guid>
		<description>Regarding the requests to bridge Tcl in the same way that Python and Ruby are being done in 10.5...  It&#039;s obviously a little late to consider this for Leopard, but if there&#039;s sufficient interest, I think it&#039;s something we could look into for the future (perhaps even doing it &quot;outside the firewall&quot;, as the RubyCocoa work is being done, so that people don&#039;t have to wait until 10.6 to see it).  I&#039;d be interested in hearing how desirable this is since, perhaps erroneously, Tcl is often seen as a dead language and doesn&#039;t get the same amount of respect that the newer scripting languages do.   I&#039;m a big fan of Tcl myself since it&#039;s saved my butt more than a few times (it&#039;s very easy to embed and doesn&#039;t have a syntax that makes me Lua all over my keyboard) so I&#039;d perhaps even be willing to take a run at doing this myself...</description>
		<content:encoded><![CDATA[<p>Regarding the requests to bridge Tcl in the same way that Python and Ruby are being done in 10.5&#8230;  It&#8217;s obviously a little late to consider this for Leopard, but if there&#8217;s sufficient interest, I think it&#8217;s something we could look into for the future (perhaps even doing it &#8220;outside the firewall&#8221;, as the RubyCocoa work is being done, so that people don&#8217;t have to wait until 10.6 to see it).  I&#8217;d be interested in hearing how desirable this is since, perhaps erroneously, Tcl is often seen as a dead language and doesn&#8217;t get the same amount of respect that the newer scripting languages do.   I&#8217;m a big fan of Tcl myself since it&#8217;s saved my butt more than a few times (it&#8217;s very easy to embed and doesn&#8217;t have a syntax that makes me Lua all over my keyboard) so I&#8217;d perhaps even be willing to take a run at doing this myself&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Johann Visagie</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-76300</link>
		<dc:creator>Johann Visagie</dc:creator>
		<pubDate>Wed, 21 Feb 2007 08:25:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-76300</guid>
		<description>Which Lisp/Objective-C bridge are you referring to?  The one that ships with OpenMCL?</description>
		<content:encoded><![CDATA[<p>Which Lisp/Objective-C bridge are you referring to?  The one that ships with OpenMCL?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alan Little</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-76021</link>
		<dc:creator>Alan Little</dc:creator>
		<pubDate>Tue, 20 Feb 2007 21:00:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-76021</guid>
		<description>Mark Grimes:

&gt; maybe Python XML support is that good ...

actually, yes it is. ElementTree is a very nice simple, &quot;pythonic&quot; xml library for most of what normal folks need to do on an everyday basis. In its cElementTree version it&#039;s well fast, and it&#039;s part of the standard libraries from python 2.5 onwards. If you need to get more down&#039;n&#039;dirty there are perfectly decent libxml2 bindings available.

I know you were really making up a hypothetical example and random, and whether python actually happens to be good at that particular thing wasn&#039;t the point you were making - but  python does in fact happen to be good at that particular thing</description>
		<content:encoded><![CDATA[<p>Mark Grimes:</p>
<p>&gt; maybe Python XML support is that good &#8230;</p>
<p>actually, yes it is. ElementTree is a very nice simple, &#8220;pythonic&#8221; xml library for most of what normal folks need to do on an everyday basis. In its cElementTree version it&#8217;s well fast, and it&#8217;s part of the standard libraries from python 2.5 onwards. If you need to get more down&#8217;n'dirty there are perfectly decent libxml2 bindings available.</p>
<p>I know you were really making up a hypothetical example and random, and whether python actually happens to be good at that particular thing wasn&#8217;t the point you were making &#8211; but  python does in fact happen to be good at that particular thing</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bbum (waiting for panic'd machine to reboot)</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-75967</link>
		<dc:creator>bbum (waiting for panic'd machine to reboot)</dc:creator>
		<pubDate>Tue, 20 Feb 2007 18:56:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-75967</guid>
		<description>Ruby and Python are fairly equivalent in terms of features and approach to development.   While fans of either language will quibble with this statement, it is true &quot;in the large&quot; -- in comparison to the laundry list of languages out there.  Both languages have their strengths and weaknesses.

So, it is matter of personal choice.  Personally, I would recommend Python for a number of reasons.  Keeping in mind that I have actively written Python code since at least 1993 or so, this list is not entirely without bias.  However, I have learned Ruby and do occasionally write Ruby code.  So far, I haven&#039;t found anything about Ruby that is compelling enough for me to choose Ruby over Python when given a choice.   Without history, it really would be a toss up for all but a handful of reasons.

- Python is easier to learn.  The whole point of the language was simplistic readability.   Python is often used as a teaching language for non comp-sci folks because of this.   And there are some awesome tutorials out there -- http://diveintopython.org/.  On the flip side, Ruby often makes comp-sci types jiggle with glee. Blocks! Whee!  (Seriously -- Ruby seems to be a more &quot;serious&quot; language... and, yes, I&#039;m mocking it for being more &quot;serious&quot; because, frankly, I find all the damned punctuation and side effects to be just plain bloody annoying).

- Python has Twisted.  If you are ever going to do network app development or do any kind of network communications stuff, nothing beats Twisted.   A bit of an iniital learning curve, but just flat out amazing after that.

- While RubyCocoa has evolved significantly in the last year, PyObjC is more mature and provides better support for distributing production applications at this time.  RubyCocoa is making great strides in this area and I suspect it will catch up sometime in the near future.  Mostly.  Ruby 1.x has an unfortunate threading model that causes hell, but it isn&#039;t a total showstopper and it will be fixed in 2.0.

- if you want to write a web app, Ruby On Rails is the crack of web programming.   Very very easy to get a site up and running and you can do some impressive stuff with it.  But RoR isn&#039;t really designed to produce large scale modular or maintainable sites.</description>
		<content:encoded><![CDATA[<p>Ruby and Python are fairly equivalent in terms of features and approach to development.   While fans of either language will quibble with this statement, it is true &#8220;in the large&#8221; &#8212; in comparison to the laundry list of languages out there.  Both languages have their strengths and weaknesses.</p>
<p>So, it is matter of personal choice.  Personally, I would recommend Python for a number of reasons.  Keeping in mind that I have actively written Python code since at least 1993 or so, this list is not entirely without bias.  However, I have learned Ruby and do occasionally write Ruby code.  So far, I haven&#8217;t found anything about Ruby that is compelling enough for me to choose Ruby over Python when given a choice.   Without history, it really would be a toss up for all but a handful of reasons.</p>
<p>- Python is easier to learn.  The whole point of the language was simplistic readability.   Python is often used as a teaching language for non comp-sci folks because of this.   And there are some awesome tutorials out there &#8212; <a href="http://diveintopython.org/" >http://diveintopython.org/</a>.  On the flip side, Ruby often makes comp-sci types jiggle with glee. Blocks! Whee!  (Seriously &#8212; Ruby seems to be a more &#8220;serious&#8221; language&#8230; and, yes, I&#8217;m mocking it for being more &#8220;serious&#8221; because, frankly, I find all the damned punctuation and side effects to be just plain bloody annoying).</p>
<p>- Python has Twisted.  If you are ever going to do network app development or do any kind of network communications stuff, nothing beats Twisted.   A bit of an iniital learning curve, but just flat out amazing after that.</p>
<p>- While RubyCocoa has evolved significantly in the last year, PyObjC is more mature and provides better support for distributing production applications at this time.  RubyCocoa is making great strides in this area and I suspect it will catch up sometime in the near future.  Mostly.  Ruby 1.x has an unfortunate threading model that causes hell, but it isn&#8217;t a total showstopper and it will be fixed in 2.0.</p>
<p>- if you want to write a web app, Ruby On Rails is the crack of web programming.   Very very easy to get a site up and running and you can do some impressive stuff with it.  But RoR isn&#8217;t really designed to produce large scale modular or maintainable sites.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stephan Cleaves</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-75961</link>
		<dc:creator>Stephan Cleaves</dc:creator>
		<pubDate>Tue, 20 Feb 2007 18:43:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-75961</guid>
		<description>So if someone with Objective-C, Cocoa, and Java experience wanted to delve into either Python or Ruby which is the best to pursue? Python seems to have more history and therefore I am guessing is more mature and has better resources for the learner. Does Ruby challenge Python in some way that would make it a more appealing choice for someone just starting out? I&#039;m not really interested to try to learn both, I find I have trouble keeping languages known if I&#039;m not using them regularly.</description>
		<content:encoded><![CDATA[<p>So if someone with Objective-C, Cocoa, and Java experience wanted to delve into either Python or Ruby which is the best to pursue? Python seems to have more history and therefore I am guessing is more mature and has better resources for the learner. Does Ruby challenge Python in some way that would make it a more appealing choice for someone just starting out? I&#8217;m not really interested to try to learn both, I find I have trouble keeping languages known if I&#8217;m not using them regularly.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin Walzer</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-75929</link>
		<dc:creator>Kevin Walzer</dc:creator>
		<pubDate>Tue, 20 Feb 2007 17:04:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-75929</guid>
		<description>Too bad the Tcl bridge isn&#039;t available anymore. I&#039;m a Tcl programmer who spends massive amounts of time tweaking my Tk GUI&#039;s to look native under Aqua. I&#039;ve tried very hard to get my head around Python via its Tkinter bindings, in hopes of leveraging that into PyObjC, but I always wind up going back to Tcl because it does what I need to. My problem is that I&#039;m not a C programmer (in any real sense), so hacking Tcl at its C API level to bridge to Cocoa is beyond my skills.</description>
		<content:encoded><![CDATA[<p>Too bad the Tcl bridge isn&#8217;t available anymore. I&#8217;m a Tcl programmer who spends massive amounts of time tweaking my Tk GUI&#8217;s to look native under Aqua. I&#8217;ve tried very hard to get my head around Python via its Tkinter bindings, in hopes of leveraging that into PyObjC, but I always wind up going back to Tcl because it does what I need to. My problem is that I&#8217;m not a C programmer (in any real sense), so hacking Tcl at its C API level to bridge to Cocoa is beyond my skills.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bbum</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-74803</link>
		<dc:creator>bbum</dc:creator>
		<pubDate>Mon, 19 Feb 2007 02:04:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-74803</guid>
		<description>The C++ runtime is fast, yes.  But there is a certain amount of memory overhead implied, be it just due to architecture (all that generalization), the various additional libraries that are dragged in, or memory management fun stuff.

For really small, tight, fast code written against what is typically a C layer on the system, C is still the tool of choice.

But, yes, certainly, C++ can be very very fast, too.  Much faster than Objective-C, certainly, but at a significant potential cost simply from the sheer volume of code that might have to be written to get the same thing done, depending on architecture.</description>
		<content:encoded><![CDATA[<p>The C++ runtime is fast, yes.  But there is a certain amount of memory overhead implied, be it just due to architecture (all that generalization), the various additional libraries that are dragged in, or memory management fun stuff.</p>
<p>For really small, tight, fast code written against what is typically a C layer on the system, C is still the tool of choice.</p>
<p>But, yes, certainly, C++ can be very very fast, too.  Much faster than Objective-C, certainly, but at a significant potential cost simply from the sheer volume of code that might have to be written to get the same thing done, depending on architecture.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ken Anderson</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-74777</link>
		<dc:creator>Ken Anderson</dc:creator>
		<pubDate>Mon, 19 Feb 2007 01:09:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-74777</guid>
		<description>&gt;  C++ developers have long written chunks of code in C 

Do you really think so?  I&#039;m wondering why anyone would do that.  Theoretically, C++ should always be faster than C.  Bjarne Stroustrup originally said that he wrote &quot;C with classes&quot; to eek more performance out of a C compiler by using inline functions and effectively making it easier (and faster) to write more efficient code.

Ken</description>
		<content:encoded><![CDATA[<p>&gt;  C++ developers have long written chunks of code in C </p>
<p>Do you really think so?  I&#8217;m wondering why anyone would do that.  Theoretically, C++ should always be faster than C.  Bjarne Stroustrup originally said that he wrote &#8220;C with classes&#8221; to eek more performance out of a C compiler by using inline functions and effectively making it easier (and faster) to write more efficient code.</p>
<p>Ken</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bbum</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-74490</link>
		<dc:creator>bbum</dc:creator>
		<pubDate>Sun, 18 Feb 2007 17:49:49 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-74490</guid>
		<description>Worse?  Define &quot;worse&quot;.

I have yet to find an app with a user interface where being able to open the NIBs or reverse engineer the bindings reveals anything that could be considered Super Top Secret Intellectual Property By Which Your Competitors Could Eat Your Lunch.

Having the source code for some subset of the app, or even the whole app, really isn&#039;t that much different beyond giving pirates the ability to kill off your licensing code (which could be left in compiled code and be as secure as it is today). 

Sure, someone could reskin your business logic and try to sell your work, but I&#039;d be surprised if they weren&#039;t busted in seconds in this modern Internet police state.</description>
		<content:encoded><![CDATA[<p>Worse?  Define &#8220;worse&#8221;.</p>
<p>I have yet to find an app with a user interface where being able to open the NIBs or reverse engineer the bindings reveals anything that could be considered Super Top Secret Intellectual Property By Which Your Competitors Could Eat Your Lunch.</p>
<p>Having the source code for some subset of the app, or even the whole app, really isn&#8217;t that much different beyond giving pirates the ability to kill off your licensing code (which could be left in compiled code and be as secure as it is today). </p>
<p>Sure, someone could reskin your business logic and try to sell your work, but I&#8217;d be surprised if they weren&#8217;t busted in seconds in this modern Internet police state.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stephane</title>
		<link>http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/comment-page-1/#comment-74236</link>
		<dc:creator>Stephane</dc:creator>
		<pubDate>Sun, 18 Feb 2007 12:53:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.friday.com/bbum/2007/02/16/c-portable-macro-assembler/#comment-74236</guid>
		<description>I&#039;m not sure Bret&#039;s comment was funny because of shipping app really shipping with source code. It&#039;s funny because you can reverse engineer Obj-C app pretty easily. And with new things such as bindings, it&#039;s even worse.</description>
		<content:encoded><![CDATA[<p>I&#8217;m not sure Bret&#8217;s comment was funny because of shipping app really shipping with source code. It&#8217;s funny because you can reverse engineer Obj-C app pretty easily. And with new things such as bindings, it&#8217;s even worse.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
