<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Fun Script</title>
	<atom:link href="http://pmougin.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://pmougin.wordpress.com</link>
	<description>Interactive Cocoa</description>
	<lastBuildDate>Sat, 14 Jan 2012 22:55:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='pmougin.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Fun Script</title>
		<link>http://pmougin.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://pmougin.wordpress.com/osd.xml" title="Fun Script" />
	<atom:link rel='hub' href='http://pmougin.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Next CocoaCoder meeting in Austin: F-Script And View-Backed in Core Animations</title>
		<link>http://pmougin.wordpress.com/2011/01/15/next-cocoacoder-meeting-in-austin-f-script-and-view-backed-in-core-animations/</link>
		<comments>http://pmougin.wordpress.com/2011/01/15/next-cocoacoder-meeting-in-austin-f-script-and-view-backed-in-core-animations/#comments</comments>
		<pubDate>Sat, 15 Jan 2011 21:35:05 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[F-Script]]></category>
		<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1755</guid>
		<description><![CDATA[For this week&#8217;s meeting, there will be two mini-presentations on F-Script and view-based animations in Core Animation. Source code and sample apps will be available afterwards. Read more&#8230;<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1755&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<blockquote><p>
For this week&#8217;s meeting, there will be two mini-presentations on F-Script and view-based animations in Core Animation. Source code and sample apps will be available afterwards. <a href="http://www.meetup.com/cocoacoder/calendar/16025254/">Read more&#8230;</a>
</p></blockquote>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1755/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1755/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1755/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1755/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1755/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1755/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1755/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1755/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1755/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1755/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1755/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1755/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1755/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1755/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1755&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2011/01/15/next-cocoacoder-meeting-in-austin-f-script-and-view-backed-in-core-animations/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>
	</item>
		<item>
		<title>Smalltalk 4 U: Getting started with F-Script</title>
		<link>http://pmougin.wordpress.com/2011/01/15/smalltalk-4-u-getting-started-with-f-script/</link>
		<comments>http://pmougin.wordpress.com/2011/01/15/smalltalk-4-u-getting-started-with-f-script/#comments</comments>
		<pubDate>Sat, 15 Jan 2011 21:25:21 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[F-Script]]></category>
		<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1751</guid>
		<description><![CDATA[A new episode of James Robertson&#8217;s Smalltalk for U series.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1751&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A new episode of James Robertson&#8217;s <a href="http://www.jarober.com/blog/st4u.ssp">Smalltalk for U series</a>.</p>
<span style="text-align:center; display: block;"><a href="http://pmougin.wordpress.com/2011/01/15/smalltalk-4-u-getting-started-with-f-script/"><img src="http://img.youtube.com/vi/F-fhcd9bAMU/2.jpg" alt="" /></a></span>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1751/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1751/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1751/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1751&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2011/01/15/smalltalk-4-u-getting-started-with-f-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>
	</item>
		<item>
		<title>Ask F-Script</title>
		<link>http://pmougin.wordpress.com/2010/06/21/ask-f-script/</link>
		<comments>http://pmougin.wordpress.com/2010/06/21/ask-f-script/#comments</comments>
		<pubDate>Mon, 21 Jun 2010 18:46:40 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[F-Script]]></category>
		<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1747</guid>
		<description><![CDATA[Vincent Gable on using F-Script for answering quick API questions instantly.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1747&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Vincent Gable on using F-Script for <a href="http://vgable.com/blog/2010/06/14/ask-f-script/" /> answering quick API questions <i>instantly</i></a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1747/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1747&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2010/06/21/ask-f-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>
	</item>
		<item>
		<title>Video: New Cocoa Programming Superpowers</title>
		<link>http://pmougin.wordpress.com/2010/06/15/video-new-cocoa-programming-superpowers/</link>
		<comments>http://pmougin.wordpress.com/2010/06/15/video-new-cocoa-programming-superpowers/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 12:23:03 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[F-Script]]></category>
		<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1727</guid>
		<description><![CDATA[Thanks to the support of the good folks at the Mac Developer Network, the NSConference talk on F-Script 2.0 is now available for free. The session explores the need for interactive manipulation of objects and shows some of the cool graphical tools provided by F-Script to achieve it. Other new features in F-Script 2 are [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1727&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div class='embed-vimeo' style='text-align:center;'><iframe src='http://player.vimeo.com/video/12535892' width='525' height='300' frameborder='0'></iframe></div>
<p>
Thanks to the support of the good folks at the <a href="http://www.mac-developer-network.com/" />Mac Developer Network</a>, the NSConference talk on F-Script 2.0 is now available for free. The session explores the need for interactive manipulation of objects and shows some of the cool graphical tools provided by F-Script to achieve it. Other new features in F-Script 2 are discussed, including dynamic Cocoa class creation, system wide scripting and the latest in exploring applications from the inside through run-time injection.
</p>
<p>
If you have never used F-Script and want to know what it is all about, this video should provide you with a good overview, packed with demos of interesting dynamic object-oriented technologies. If you are a regular F-Script user, you&#8217;ll feel at home but might still learn a few neat tricks.
</p>
<p>You can watch the embedded video above or get to the video on its <a href="http://www.vimeo.com/12535892">Vimeo page</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1727/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1727/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1727/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1727/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1727/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1727/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1727/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1727/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1727/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1727/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1727/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1727/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1727/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1727/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1727&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2010/06/15/video-new-cocoa-programming-superpowers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>
	</item>
		<item>
		<title>F-Script 2.1 released</title>
		<link>http://pmougin.wordpress.com/2010/06/14/f-script-2-1-released/</link>
		<comments>http://pmougin.wordpress.com/2010/06/14/f-script-2-1-released/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 13:34:07 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[F-Script]]></category>
		<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1649</guid>
		<description><![CDATA[You can download F-Script 2.1 now (for Mac OS X 10.6 or later). The main new feature in this version is support for adding methods to existing classes. This is similar to Objective-C categories, but works dynamically at run-time. This is quite useful for prototyping stuff and experimenting with new designs, as well as for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1649&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>You can <a href="http://www.fscript.org/download/F-Script20100614.zip">download F-Script 2.1 now</a> (for Mac OS X 10.6 or later).</p>
<p>The main new feature in this version is support for adding methods to existing classes. This is similar to Objective-C categories, but works dynamically at run-time. This is quite useful for prototyping stuff and experimenting with new designs, as well as for making object-oriented frameworks developed independently work together. Besides, it is a natural extension of the ability to define Cocoa classes directly in F-Script and lets you write a bigger part of your application code in F-Script, should you want to.</p>
<p>You can teach new tricks to any class registered in the Objective-C runtime, regardless of its original implementation language (Objective-C, F-Script or other). The syntax is straightforward: class name followed by new methods inside a pair of curly braces. For example, here is how we can add a <code>print</code> method the NSObject class:</p>
<pre class="codebox"><code><span class="signature">NSObject</span>
{
   <span class="signature">- (void)print</span>
   {
       <span class="comment">"Print the receiver's description on standard output."</span>
       <span class="identifier">stdout</span> <span class="selector">print:</span><span class="identifier">self</span> <span class="selector">description</span>
   }
}
</code></pre>
<p>Of course, this also works for class methods. For example, the following code adds a <code>pi</code> method to the NSNumber class:</p>
<pre class="codebox"><code><span class="signature">NSNumber</span>
{
   <span class="signature">+ pi</span>
   {
       ^ <span class="literal">3.141592653589793</span>
   }
}
</code></pre>
<p>The following example, a little bit more sophisticated, adds some common Smalltalk collection methods (namely <code>collect:</code>, <code>inject:into:</code>, <code>groupedBy:</code> and <code>select:</code>) to the NSArray class:</p>
<pre class="codebox"><code><span class="signature">NSArray</span>
{
   <span class="signature">- collect:transformer</span>
   {
       <span class="comment">"Answer a new NSArray constructed by gathering the results of
        evaluating transformer (a block with one parameter) with each
        element of the receiver."</span>

       ^ <span class="identifier">transformer</span> <span class="selector">value:@</span><span class="identifier">self</span>
   }

   <span class="signature">- groupedBy:criteria</span>
   {
       <span class="comment">"Answer an NSDictionary whose keys are the result of evaluating
        criteria (a block with one parameter) for all elements in the
        collection, and the value for each key is the collection of
        elements that evaluated to that key. For example
          {'Hello', 'guys', 'I', 'enjoy', 'programming', 'with', 'style'}
          groupedBy:#length
        returns a dictionary with the following key/value associations:
           1 -&gt; {'I'},
           4 -&gt; {'guys', 'with'},
           5 -&gt; {'hello', 'enjoy', 'style'},
          11 -&gt; {'programming'}"</span>

       | <span class="identifier">result</span> |
       <span class="identifier">result</span> := #{}.

       <span class="identifier">self</span> <span class="selector">do:</span>[:<span class="identifier">each</span>|
           | <span class="identifier">key</span> <span class="identifier">group</span> |
           <span class="identifier">key</span> := <span class="identifier">criteria</span> <span class="selector">value:</span><span class="identifier">each</span>.
           <span class="identifier">group</span> := <span class="identifier">result</span> <span class="selector">at:</span><span class="identifier">key</span>.
           <span class="identifier">group</span> <span class="selector">==</span> <span class="literal">nil</span> <span class="selector">ifTrue:</span>
           [
               <span class="identifier">group</span> := {}.
               <span class="identifier">result</span> <span class="selector">at:</span><span class="identifier">key</span> <span class="selector">put:</span><span class="identifier">group</span>.
           ].
           <span class="identifier">group</span> <span class="selector">addObject:</span><span class="identifier">each</span>.
       ].

       ^ <span class="identifier">result</span>
   }

   <span class="signature">- inject:initialValue into:operation</span>
   {
       <span class="comment">"Answer the final result of evaluating operation (a block with
        two parameters) using the previous evaluation result and each
        element of the receiver as the parameters. The first evaluation
        of operation is performed with initialValue as the first
        parameter, and the first element of the receiver as the second
        parameter. For instance, to sum the numeric elements of an
        array, use:
            anArray inject:0 into:#+"</span>

       | <span class="identifier">nextValue</span> |
       <span class="identifier">nextValue</span> := <span class="identifier">initialValue</span>.
       <span class="identifier">self</span> <span class="selector">do:</span>[:<span class="identifier">each</span>|
           <span class="identifier">nextValue</span> := <span class="identifier">operation</span> <span class="selector">value:</span><span class="identifier">nextValue</span> <span class="selector">value:</span><span class="identifier">each</span>
       ].
       ^ <span class="identifier">nextValue</span>
   }

   <span class="signature">- select:discriminator</span>
   {
       <span class="comment">"Answer a new NSArray which contains the elements in the
        receiver which cause discriminator (a block with one parameter)
        to evaluate to true. For each element of the receiver,
        discriminator is evaluated with the element as the parameter.
        Each element which causes discriminator to evaluate to true is
        added to the new array."</span>

       ^ <span class="identifier">self</span> <span class="selector">where:</span>(<span class="identifier">discriminator</span> <span class="selector">value:@</span><span class="identifier">self</span>)
   }
}
</code></pre>
<p>Share and enjoy!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1649/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1649/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1649&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2010/06/14/f-script-2-1-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>
	</item>
		<item>
		<title>Core Data Browser.app</title>
		<link>http://pmougin.wordpress.com/2010/04/11/core-data-browser-app/</link>
		<comments>http://pmougin.wordpress.com/2010/04/11/core-data-browser-app/#comments</comments>
		<pubDate>Sun, 11 Apr 2010 16:59:56 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[F-Script]]></category>
		<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1639</guid>
		<description><![CDATA[Michael Tyson&#8217;s Core Data Browser.app is a nifty tool which lets you easily open a Core Data database for graphical exploration with F-Script. You can read more about it in Browsing Core Data databases using F-Script. I wonder where in Europe it has been developed&#8230;<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1639&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>
Michael Tyson&#8217;s Core Data Browser.app is a nifty tool which lets you easily open a Core Data database for graphical exploration with F-Script. You can read more about it in<br />
<a href="http://atastypixel.com/blog/2010/04/10/browsing-core-data-databases-using-f-script/">Browsing Core Data databases using F-Script</a>. I wonder <a href="http://michael.tyson.id.au/">where in Europe</a> it has been developed&#8230;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1639/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1639/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1639/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1639/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1639/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1639/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1639/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1639/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1639/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1639/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1639/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1639/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1639/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1639/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1639&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2010/04/11/core-data-browser-app/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>
	</item>
		<item>
		<title>F-Script Switching Options</title>
		<link>http://pmougin.wordpress.com/2010/03/09/f-script-switching-options/</link>
		<comments>http://pmougin.wordpress.com/2010/03/09/f-script-switching-options/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 20:20:40 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[F-Script]]></category>
		<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1627</guid>
		<description><![CDATA[In F-Script, blocks combined with message sending can be used to create new control structures fitting your needs (and mood!). Indeed, things like if/else, while or exception handling control structures are all provided at the library level, with no need for specialized syntax in the language itself. In F-Script Switching Options, Jeff explore creating new [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1627&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>
In F-Script, blocks combined with message sending can be used to create new control structures fitting your needs (and mood!). Indeed, things like <font color="gray">if/else</font>, <font color="gray">while</font> or <font color="gray">exception handling</font> control structures are all provided at the library level, with no need for specialized syntax in the language itself. In <a href="http://blog.hyperjeff.net/?p=167">F-Script Switching Options</a>, Jeff explore creating new kinds of conditional control structures:</p>
<blockquote><p>
There are many ways to think through the flow of a program, and times when certain constructs like switch statements are a nice option, even in a language with no syntactical support for it, per se. Philippe Mougin was discussing just such options in F-Script back in the Oughts. I had a need for switching in F-Script, and came up with a few versions that I found useful. <a href="http://blog.hyperjeff.net/?p=167">Read more&#8230;</a>
</p></blockquote>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1627/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1627/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1627/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1627/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1627/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1627/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1627/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1627/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1627/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1627/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1627/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1627/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1627/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1627/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1627&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2010/03/09/f-script-switching-options/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>
	</item>
		<item>
		<title>Objective-C 2.0 in French</title>
		<link>http://pmougin.wordpress.com/2010/02/19/objective-c-2-0-in-french/</link>
		<comments>http://pmougin.wordpress.com/2010/02/19/objective-c-2-0-in-french/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 18:43:43 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1609</guid>
		<description><![CDATA[I just got a copy of Objective-C 2.0 Guide de Survie, a book written by Pejvan Beigui and published by Pearson. This 240 pages pocket sized book looks great for french speaking people coming to Objective-C (and I can tell you there are a lot of them since Apple released an SDK for that phone [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1609&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>
I just got a copy of <a href="http://www.pearson.fr/livre/?GCOI=27440100024070">Objective-C 2.0 Guide de Survie</a>, a book written by Pejvan Beigui and published by Pearson. This 240 pages pocket sized book looks great for french speaking people coming to Objective-C (and I can tell you there are a lot of them since Apple released an SDK for that phone whose name I&#8217;ve forgotten). The book is also aimed at current Objective-C developers transitioning to Objective-C 2.0 as there is a whole chapter dedicated to that subject.
</p>
<p><a href="http://www.pearson.fr/livre/?GCOI=27440100024070"><img src="http://pmougin.files.wordpress.com/2010/02/49c1ec40-08a0-4c22-848d-d45c4e332bf5.jpg?w=128&#038;h=213" alt="Objective-C 2.0 in French" border="0" width="128" height="213" /></a></p>
<p>
With this book, Pejvan comes back to its Cocoa roots. A number of french developers will remember him, as he has been very active in the early years of Mac OS X both as a member of Apple Developer Relations and as a founder of the Cocoa enthusiasts community Project:Omega (incidentally, he was the french translator for the original O&#8217;Reilly F-Script articles series). In the book, he makes approaching Objective-C 2.0 easier for people coming from other languages by often comparing its syntax and functionalities to those of Java and C# (with a little bit of Python too). He also puts emphasis on code quality, with advices on dealing with errors, assertions and unit tests.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1609/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1609/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1609/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1609&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2010/02/19/objective-c-2-0-in-french/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>

		<media:content url="http://pmougin.files.wordpress.com/2010/02/49c1ec40-08a0-4c22-848d-d45c4e332bf5.jpg" medium="image">
			<media:title type="html">Objective-C 2.0 in French</media:title>
		</media:content>
	</item>
		<item>
		<title>Looking for a new job</title>
		<link>http://pmougin.wordpress.com/2010/01/20/looking-for-a-new-job/</link>
		<comments>http://pmougin.wordpress.com/2010/01/20/looking-for-a-new-job/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 12:03:13 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1598</guid>
		<description><![CDATA[I am starting to look for a new job. If you are reading this you probably know that I love working on innovative Cocoa-based stuff. Another field of interest for me is enterprise architecture: REST, SOA, JEE, ESB, etc. I am based in Paris, France, and you can get at my resume here. Interested? Drop [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1598&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p align="justify">
I am starting to look for a new job. If you are reading this you probably know that I love working on innovative Cocoa-based stuff. Another field of interest for me is enterprise architecture: REST, SOA, JEE, ESB, etc. I am based in Paris, France, and you can get at my <a href="http://www.fscript.org/prof/prof.htm">resume here</a>. Interested? <a href="mailto:pmougin@acm.org">Drop me a line.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1598/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1598/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1598/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1598&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2010/01/20/looking-for-a-new-job/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>
	</item>
		<item>
		<title>The revenge of F-Script Anywhere</title>
		<link>http://pmougin.wordpress.com/2010/01/05/the-revenge-of-f-script-anywhere/</link>
		<comments>http://pmougin.wordpress.com/2010/01/05/the-revenge-of-f-script-anywhere/#comments</comments>
		<pubDate>Tue, 05 Jan 2010 09:08:21 +0000</pubDate>
		<dc:creator>Philippe Mougin</dc:creator>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[F-Script]]></category>
		<category><![CDATA[Smalltalk]]></category>

		<guid isPermaLink="false">http://pmougin.wordpress.com/?p=1529</guid>
		<description><![CDATA[F-Script injection brings amazing capabilities: it lets you explore applications from the inside, interactively navigating and manipulating the internal Objective-C objects they are made of. And it is all done live, while the applications are running. For example, if you haven&#39;t seen it yet, here is how the Finder looks like from the inside and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1529&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p align="justify">F-Script injection brings amazing capabilities: it lets you explore applications from the inside, interactively navigating and manipulating the internal Objective-C objects they are made of. And it is all done live, while the applications are running. For example, if you haven&#39;t seen it yet, <a href="http://pmougin.wordpress.com/2009/10/28/ultimate-proof-that-the-finder-is-now-a-cocoa-application/">here is how the Finder looks like from the inside</a> and <a href="http://blog.hyperjeff.net/?p=162">here is a fun video clip</a> showing how you can reprogram an application on the fly.</p>
<p align="justify">Since the dawn of times, F-Script injection was provided by F-Script Anywhere. But as you may know, Snow Leopard broke it without mercy. Fortunately, an alternative F-Script injection mechanism has been <a href="http://pmougin.wordpress.com/2009/08/29/f-script-anywhere-on-snowy/"> made available</a>. Still, it requires launching gdb and typing a command, which is boring.</P></p>
<p align="justify">Today, I&#39;m glad to announce that all of this is now entirely automated, thanks to the injection service developed by Silvio H. Ferreira. It adds an automated F-Script injection procedure in the Services menu, meaning that injecting a whole F-Script environment in an application is now just two mouse clicks away: one to go to the Services menu, and one to select the &quot;Inject F-Script into application&quot; item. This brings back the zero configuration and ease of use spirit of good old F-Script Anywhere.</p>
<p><span style="font-size:smaller;"><b>Picture: injecting F-Script into the Finder using the new injection service</b></span><br />
<img src="http://pmougin.files.wordpress.com/2010/01/fsinjection.png?w=454&#038;h=201" alt="The revenge of F-Script anywhere" border="0" width="454" height="201"></p>
<p align="justify">Once injected (which can take a few seconds), F-Script will make itself available by adding an F-Script menu in the menu bar of the target application.</p>
<p align="justify">You can <a href="http://www.fscript.org/download/F-ScriptInjectionService.zip">download the F-Script injection service here</a> (for Mac OS X 10.6).</p>
<p>Enjoy!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pmougin.wordpress.com/1529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pmougin.wordpress.com/1529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pmougin.wordpress.com/1529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pmougin.wordpress.com/1529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pmougin.wordpress.com/1529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pmougin.wordpress.com/1529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pmougin.wordpress.com/1529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pmougin.wordpress.com/1529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pmougin.wordpress.com/1529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pmougin.wordpress.com/1529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pmougin.wordpress.com/1529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pmougin.wordpress.com/1529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pmougin.wordpress.com/1529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pmougin.wordpress.com/1529/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pmougin.wordpress.com&amp;blog=2047678&amp;post=1529&amp;subd=pmougin&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pmougin.wordpress.com/2010/01/05/the-revenge-of-f-script-anywhere/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">pmougin</media:title>
		</media:content>

		<media:content url="http://pmougin.files.wordpress.com/2010/01/fsinjection.png" medium="image">
			<media:title type="html">The revenge of F-Script anywhere</media:title>
		</media:content>
	</item>
	</channel>
</rss>
