<?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"
	>
<channel>
	<title>Comments on: Fun with Leopard&#8217;s Scripting Bridge (Part 1)</title>
	<atom:link href="http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/feed/" rel="self" type="application/rss+xml" />
	<link>http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/</link>
	<description>Interactive Cocoa</description>
	<pubDate>Wed, 23 Jul 2008 22:59:21 +0000</pubDate>
	<generator>http://wordpress.org/?v=MU</generator>
		<item>
		<title>By: Script Bridge &#171; Life goes on</title>
		<link>http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-243</link>
		<dc:creator>Script Bridge &#171; Life goes on</dc:creator>
		<pubDate>Wed, 21 May 2008 04:38:18 +0000</pubDate>
		<guid isPermaLink="false">http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-243</guid>
		<description>[...] with SB ( Part 1, Part 2, [...]</description>
		<content:encoded><![CDATA[<p>[...] with SB ( Part 1, Part 2, [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: successmatters</title>
		<link>http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-13</link>
		<dc:creator>successmatters</dc:creator>
		<pubDate>Wed, 28 Nov 2007 21:26:50 +0000</pubDate>
		<guid isPermaLink="false">http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-13</guid>
		<description>nice one</description>
		<content:encoded><![CDATA[<p>nice one</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Philippe Mougin</title>
		<link>http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-12</link>
		<dc:creator>Philippe Mougin</dc:creator>
		<pubDate>Wed, 28 Nov 2007 21:16:42 +0000</pubDate>
		<guid isPermaLink="false">http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-12</guid>
		<description>Hi has!

Thanks for your message. Indeed, your solution for the Application folder example is much better than mine. I have updated the post with a new solution based on your approach. This gives us, in F-Script: 

(Finder startupDisk folders objectWithName:'Applications') files count

Cheers,

Philippe</description>
		<content:encoded><![CDATA[<p>Hi has!</p>
<p>Thanks for your message. Indeed, your solution for the Application folder example is much better than mine. I have updated the post with a new solution based on your approach. This gives us, in F-Script: </p>
<p>(Finder startupDisk folders objectWithName:&#8217;Applications&#8217;) files count</p>
<p>Cheers,</p>
<p>Philippe</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: has</title>
		<link>http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-11</link>
		<dc:creator>has</dc:creator>
		<pubDate>Wed, 28 Nov 2007 16:29:41 +0000</pubDate>
		<guid isPermaLink="false">http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-11</guid>
		<description>Interesting. F-Script, like Smalltalk, is one of those things I've long been meaning to get better acquainted with, but never seem to find the time for more than a quick dabble, alas. Hopefully one of these days...

One thing I'm not quite clear about though is the Applications folder example. If I understand correctly, you're using two filter tests just to locate the Applications folder. Is there a reason you're doing it that way, rather than using a property specifier followed by a by-name element specifier, which is the normal way to do it? i.e.:

&lt;code&gt;
Finder.startup_disk.folders['Applications'].count(:each =&#62; :file)
&lt;/code&gt;

rather than:

&lt;code&gt;
folders = Finder.disks[its.startup.eq(true)].last.folders
appFolder = folders[its.name.eq('Applications')].last
appFolder.files.count(:each =&#62; :item)
&lt;/code&gt;

which is more to type in and less efficient to evaluate.

BTW, I've been thinking for a while about adding a dynamic API to objc-appscript in order to make it easier to incorporate into interpreted languages that already have ObjC bindings. If you've any advice or suggestions on what sort of API design would be best suited for this I'd be very interested to hear.

Cheers, 

has 
-- 
http://appscript.sourceforge.net 
http://rb-appscript.rubyforge.org</description>
		<content:encoded><![CDATA[<p>Interesting. F-Script, like Smalltalk, is one of those things I&#8217;ve long been meaning to get better acquainted with, but never seem to find the time for more than a quick dabble, alas. Hopefully one of these days&#8230;</p>
<p>One thing I&#8217;m not quite clear about though is the Applications folder example. If I understand correctly, you&#8217;re using two filter tests just to locate the Applications folder. Is there a reason you&#8217;re doing it that way, rather than using a property specifier followed by a by-name element specifier, which is the normal way to do it? i.e.:</p>
<p><code><br />
Finder.startup_disk.folders['Applications'].count(:each =&gt; :file)<br />
</code></p>
<p>rather than:</p>
<p><code><br />
folders = Finder.disks[its.startup.eq(true)].last.folders<br />
appFolder = folders[its.name.eq('Applications')].last<br />
appFolder.files.count(:each =&gt; :item)<br />
</code></p>
<p>which is more to type in and less efficient to evaluate.</p>
<p>BTW, I&#8217;ve been thinking for a while about adding a dynamic API to objc-appscript in order to make it easier to incorporate into interpreted languages that already have ObjC bindings. If you&#8217;ve any advice or suggestions on what sort of API design would be best suited for this I&#8217;d be very interested to hear.</p>
<p>Cheers, </p>
<p>has<br />
&#8211;<br />
<a href="http://appscript.sourceforge.net" rel="nofollow">http://appscript.sourceforge.net</a><br />
<a href="http://rb-appscript.rubyforge.org" rel="nofollow">http://rb-appscript.rubyforge.org</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Laurent Sansonetti</title>
		<link>http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-10</link>
		<dc:creator>Laurent Sansonetti</dc:creator>
		<pubDate>Tue, 27 Nov 2007 22:21:45 +0000</pubDate>
		<guid isPermaLink="false">http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-10</guid>
		<description>Waw, I'm looking forward to read more.</description>
		<content:encoded><![CDATA[<p>Waw, I&#8217;m looking forward to read more.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Philippe Mougin</title>
		<link>http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-9</link>
		<dc:creator>Philippe Mougin</dc:creator>
		<pubDate>Tue, 27 Nov 2007 21:01:01 +0000</pubDate>
		<guid isPermaLink="false">http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-9</guid>
		<description>Hi Laurent!

Actually, the alpha version already uses BridgeSupport to provide access to symbolic constants, enums, etc. I will blog about that soon.</description>
		<content:encoded><![CDATA[<p>Hi Laurent!</p>
<p>Actually, the alpha version already uses BridgeSupport to provide access to symbolic constants, enums, etc. I will blog about that soon.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Laurent Sansonetti</title>
		<link>http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-8</link>
		<dc:creator>Laurent Sansonetti</dc:creator>
		<pubDate>Tue, 27 Nov 2007 20:36:08 +0000</pubDate>
		<guid isPermaLink="false">http://pmougin.wordpress.com/2007/11/27/fun-with-leopards-scripting-bridge-part-1/#comment-8</guid>
		<description>Sympa :-)

Unrelated, do you plan to use the new BridgeSupport files in FScript 2.0?

Laurent</description>
		<content:encoded><![CDATA[<p>Sympa :-)</p>
<p>Unrelated, do you plan to use the new BridgeSupport files in FScript 2.0?</p>
<p>Laurent</p>
]]></content:encoded>
	</item>
</channel>
</rss>
