<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>'Oslo' &amp; Modelling</title>
        <link>http://geekswithblogs.net/cyoung/category/9576.aspx</link>
        <description>'Oslo' &amp; Modelling</description>
        <language>en-GB</language>
        <copyright>Charles Young</copyright>
        <managingEditor>charles.young@solidsoft.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Where is Oslo Going?</title>
            <link>http://geekswithblogs.net/cyoung/archive/2009/04/13/130921.aspx</link>
            <description>&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;I've been engaged in some debate in the last few days with &lt;/font&gt;&lt;a name="OLE_LINK2"&gt;&lt;/a&gt;&lt;a name="OLE_LINK1"&gt;&lt;span style="mso-bookmark: OLE_LINK2"&gt;&lt;font color="#000000" size="3" face="Calibri"&gt;Jean-Jacques &lt;/font&gt;&lt;/span&gt;&lt;/a&gt;&lt;font size="3" face="Calibri"&gt;Dubray and Doug Purdy with regard to Oslo. &lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;See:&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt 36pt" class="MsoNormal"&gt;&lt;a href="http://www.ebpml.org/blog/182.htm"&gt;&lt;font color="#800080" size="3" face="Calibri"&gt;http://www.ebpml.org/blog/182.htm&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt 36pt" class="MsoNormal"&gt;&lt;a href="http://www.douglaspurdy.com/2009/04/09/where-is-oslo-going-part-ii/"&gt;&lt;font color="#800080" size="3" face="Calibri"&gt;http://www.douglaspurdy.com/2009/04/09/where-is-oslo-going-part-ii/&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;Jean-Jacques has questioned aspects of Microsoft's strategy.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Following some issues with posting anything but the shortest of comments on the ebPML web site, I'll follow Doug's lead and post a response here.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;I strongly agree with Jean-Jacques' statement that 'M3 exists'.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;It seems a little strange to feel the need to state this emphatically, but the existence of M3 has sometimes been challenged.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Today, 'Oslo' does little to call out or underline the existence of M3.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;'Oslo' really isn't expressed in terms of 'classic' metamodel architecture.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;I would expect this to be unnerving to some people in the MOF community, and my interest, in a previous post, has been to attempt to show that, despite appearances, there is actually an underlying and solid foundation of common ground between OMG specifications and Oslo.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;There is also a lot of history to this.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;It seems to me that multiple metamodel layers exist regardless of technology or specification.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;However, the degree to which we need to express them within any given context, and the way we choose to do so, is absolutely a matter of pragmatics.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;I'm schooled in the old linguistic philosophy that languages (including modelling languages) are built on the 'trinity' of syntax, semantics and pragmatics.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;It is these three areas that Oslo so directly calls out and emphasises.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;To date, it has, if anything, overly-separated these distinct concerns and I suggest that a lot of the feedback Microsoft has received from the CTP is, in reality, asking them to look for more effective and practical interaction between these different aspects of their emerging technology.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;These requests are absolutely driven by pragmatic considerations.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;So, while I appreciate Jean-Jacques' comments about pragmatics, I think that this is potentially the area of greatest strength in terms of what Microsoft is doing.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;If they get it right (and there is no guarantee of that), they will succeed in providing a set of tools that add real and significant value to their platform and support far more effective use of models in both architecture and development.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;In terms of the technology, Oslo offers one language - 'M', founded on graph theory and expressed through MSchema and MGrammar.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;M is designed to be used at any level within a metamodel architecture.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;I've always found it difficult to imagine any practical need for M4 or above, but I guess you could extend this indefinitely!&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;What Microsoft doesn't do in the current CTP is to provide any pre-canned M3 meta-metamodels (actually, that is not entirely true - there is the beginning of some M3 support in the repository).&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Given that they plan to deliver fulsome support for UML, and have committed themselves publically to XMI, and given their OMG membership, it is possible that we might even see Microsoft exploit MOF.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;If they don't do this, themselves, it will only be a matter of time before others do within the Oslo ecosystem.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;What I don't expect to see is any attempt to promote MOF as a one-size-fits-all M3 specification in the world of Oslo.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;That should not be interpreted as some conspiratorial (and completely pointless) attempt to undermine well-accepted standards.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;It is simply the natural consequence of remaining agnostic with regard to the number of metamodel layers needed, pragmatically, within any given context.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;Jean-Jacques engages is an interesting argument about 'defining M3 properly' for implementational purposes.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;There is a lot in what he is saying.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;MOF was originally bound to CORBA IDL, and Microsoft's RTIM (an ancient specification that was roughly equivalent to MOF) was similarly bound to COM IDL.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;The first thing that happened when Microsoft put their specifications into the hands of a standards organisation was that RTIM was rejected as being too proprietary.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Similarly, but more positively, the OMG has rigorously decoupled MOF 2 from CORBA.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Jean-Jacques is, I think, suggesting that MOF still fails to adequately handle the kind of impedance mismatches that can occur when creating bindings to very different run-time representations.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;I will leave it to others to argue the finer points of MOF, but in terms of Oslo, the stated intention is to reduce the barrier between models and runtimes to the point of near-invisibility.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;The Oslo goal is to promote the direct consumption of models (including metamodels and meta-metamodels) within a wide variety of runtimes.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;No doubt, as Oslo evolves, we will see the advent of tooling and technologies that help developers to build the widest variety of model-driven run-times.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;I have a suspicion that XAML will end up being central to much of this effort.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;To summarise, M3 is always there in some sense, but doesn't always need to be represented explicitly within a given context.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Microsoft's historic experience of building multi-level metamodel architecture and repository technology strongly indicates that if you try to force explicit representation of M3 on your development and ISV communities, they will often ignore what you offer.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Oslo does not require MOF compliance or any alternative, but is perfectly capable of supporting this as required.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;The ability to bind model representation at any appropriate layer of a metamodel architecture to runtime environments in a thoroughly pragmatic fashion is likely to be a core decider in terms of Oslo's future success.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;I’ll take this opportunity to share an initial attempt I made earlier this year to relate, rather broadly, the core ‘M’ language artefacts to multi-level metamodel architecture and also to the ‘syntax-semantics-pragmatics’ trinity.&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;This diagram is entirely of my own making and is in no way ‘official’ (I don’t work for Microsoft).&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;One major weakness is that it suggests a highly repository-centric emphasis in regards to pragmatics.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;In reality, I expect that the use of the repository will only be one of many aspects of pragmatics. &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;Consider, for example, the role of MGraph is enabling pragmatics at the M0 layer or, indeed, the use of ‘Quadrant’. &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;This diagram is very much a work in progress and I will wait until future iterations before revisiting and refining this.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Another issue is that, on the left-hand side, I have suggested the existence of MSchema and MGrammar grammars.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;These may not necessarily be made public by Microsoft, but do appear to exist.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;font size="3" face="Calibri"&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" class="MsoNormal"&gt;&lt;img alt="Expreressing Oslo in UML: draft 1.0" width="1022" height="413" src="/images/geekswithblogs_net/cyoung/507/o_OsloInUML_draft_0.1.jpg" /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=130921"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=130921" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/cyoung/aggbug/130921.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Charles Young</dc:creator>
            <guid>http://geekswithblogs.net/cyoung/archive/2009/04/13/130921.aspx</guid>
            <pubDate>Mon, 13 Apr 2009 18:27:53 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/cyoung/comments/130921.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/cyoung/archive/2009/04/13/130921.aspx#feedback</comments>
            <slash:comments>8</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/cyoung/comments/commentRss/130921.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/cyoung/services/trackbacks/130921.aspx</trackback:ping>
        </item>
        <item>
            <title>'Oslo' SDK - January 2009 CTP</title>
            <link>http://geekswithblogs.net/cyoung/archive/2009/02/04/129186.aspx</link>
            <description>&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;The latest CTP version of the Oslo SDK was released a few days ago.&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;I spent some time yesterday installing it and having a look.&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;From a functionality perspective, there is not very much difference to the October 2008 CTP released after last year's PDC.&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;However, if you open up the main assemblies in Reflector, it quickly becomes apparent that the code has undergone significant refactoring and improvement.&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;The code looks much tidier and closer to production quality.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;For example, the October 2008 CTP contained generated parser/lexer code for MGrammar.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;In the latest version, this has been removed, and it appears that the parser code is now dynamically generated at runtime (the 'preferred' Oslo approach).&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;There has been lots of tidying up done in terms of type and method names.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Additional functionality has been added to manage various issues, and the entire code base looks tighter and better constructed.&lt;o:p&gt; &lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;In terms of new functionality, this has been discussed elsewhere.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;See, for example, &lt;a href="http://www.alexthissen.nl/blogs/main/archive/2009/01/31/improvements-and-changes-to-oslo-sdk-and-repository-in-january-ctp.aspx"&gt;http://www.alexthissen.nl/blogs/main/archive/2009/01/31/improvements-and-changes-to-oslo-sdk-and-repository-in-january-ctp.aspx&lt;/a&gt;.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Most attention has been given to the ability to include actions on the RHS of token productions.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;In the work we have undertaken to date, we have come across at least one situation which requires this new feature, and which we could not properly address in the October 2008 CTP.&lt;o:p&gt; &lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;Perhaps the most intriguing aspect of the January 2009 CTP is the way this new feature is described in the Release Notes.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;I suspect that Microsoft has inadvertently let slip a feature that they didn't mean to go public on.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;The Release Notes published on the web site state that:&lt;o:p&gt; &lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Verdana" size="2"&gt;"Any production in a token can now have a code action or a graph action (formerly known as term construction)!&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;You can now specify a return type for a token definition in the case of code actions, similar to a syntax definition."&lt;/font&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Verdana" size="2"&gt;In the October 2008 CTP, actions are limited only to MGraph expressions.&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;An action is an optional implication of a production that controls the output of the MGraph abstract syntax tree created by the parser.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;As far as I can tell, this is still the case in the new CTP.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Unlike many similar technologies, the CTP version of MGrammar does not support the inclusion of code statements as semantic actions.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;This was discussed by Clemens Szyperski (an Oslo architect) in a comment to the blog article at &lt;a href="http://weblogs.asp.net/fbouma/archive/2008/11/05/designing-a-language-is-hard-and-m-won-t-change-that.aspx"&gt;http://weblogs.asp.net/fbouma/archive/2008/11/05/designing-a-language-is-hard-and-m-won-t-change-that.aspx&lt;/a&gt;, and the suggestion appears to be that this is a deliberate strategy in order to ensure that MGrammar remains (relatively) simple to write and focussed only on composable DSL creation.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Verdana" size="2"&gt;The Release Notes statement suggests that Microsoft is looking at including code actions in MGrammar.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;As I say, it would appear that this feature is not actually supported in the January 2009 CTP.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;If it is, there is certainly no documentation explaining how to use this feature.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Interestingly, this may be the explanation for a feature within the October 2008 CTP which seems to have disappeared from the current version.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;In the previous CTP, the MGrammar assembly included code for parsing C# statements.&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;The parser didn't appear to be designed as a full-blown C# parser, but looked like it was designed to parse code statements and expressions.&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;This code appears to be missing from the January 2009 CTP. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Verdana" size="2"&gt;It is generally a fool’s errand to speculate on what is happening behind the scenes, and I certainly have no special insight or knowledge about Microsoft's intentions.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;However, I can't help wondering if Microsoft has accidently let us see that they are considering supporting code actions in MGrammar when it is released, and have built code to support this feature which they do not wish to make public at the current time.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;If this is the case, there is no guarantee that this feature will make it into the final release.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;For my part, I have been thinking about this issue for a few months now, and am undecided, myself, as to the desirability of supporting full-blown semantic actions in this fashion.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;The issue, I think, is about how useful this feature will really be in mainstream DSL creation.&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;Does the reduced problem domain of a domain-specific language imply language simplicity that generally avoids the need to handle complex semantics at the parser level?&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;Clearly, there is no fundamental reason why a DSL should not exhibit such complexity, but if the vast majority of DSLs are inherently simple, maybe it would be wiser to stick to the current labelled graph-only model employed by MGrammar parsers, and work around this restriction.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;As I say, I am undecided.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;It may be that the Oslo team are currently also uncertain of the best strategy.&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;It would be interesting to hear views from the wider modelling community.&lt;/font&gt;&lt;/p&gt;
&lt;span style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;In a related issue, am I the only person to spot an uncanny philosophical resemblance between MGrammar and Labelled BNF (LBNF)?&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;Did LBNF have any bearing on the Oslo team's thinking?&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;The mechanics of the Oslo approach are different, and IMHO generally superior, to LBNF, but some of the &lt;span style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi"&gt;underlying thinking is similar, including the emphasis on creation and shaping of labelled graph ASTs.&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=129186"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=129186" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/cyoung/aggbug/129186.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Charles Young</dc:creator>
            <guid>http://geekswithblogs.net/cyoung/archive/2009/02/04/129186.aspx</guid>
            <pubDate>Wed, 04 Feb 2009 17:34:31 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/cyoung/comments/129186.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/cyoung/archive/2009/02/04/129186.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/cyoung/comments/commentRss/129186.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/cyoung/services/trackbacks/129186.aspx</trackback:ping>
        </item>
    </channel>
</rss>