<?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: Xtext M6 with more documentation and stable API</title>
	<atom:link href="http://www.heikobehrens.net/2009/03/19/xtext-m6-with-more-documentation-and-stable-api/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.heikobehrens.net/2009/03/19/xtext-m6-with-more-documentation-and-stable-api/</link>
	<description>11:60 p.m. - my plain thoughts</description>
	<lastBuildDate>Wed, 25 Aug 2010 01:56:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: 11:60 p.m. &#187; Blog Archive &#187; New Xtext Logo</title>
		<link>http://www.heikobehrens.net/2009/03/19/xtext-m6-with-more-documentation-and-stable-api/#comment-2053</link>
		<dc:creator>11:60 p.m. &#187; Blog Archive &#187; New Xtext Logo</dc:creator>
		<pubDate>Sun, 07 Jun 2009 21:49:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.1160pm.net/?p=260#comment-2053</guid>
		<description>[...] case. Eventually, we realized that the omnipresent logo started with a lower-case &#8220;x&#8221; (convince yourself). So it was out own [...]</description>
		<content:encoded><![CDATA[<p>[...] case. Eventually, we realized that the omnipresent logo started with a lower-case &#8220;x&#8221; (convince yourself). So it was out own [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Heiko Behrens</title>
		<link>http://www.heikobehrens.net/2009/03/19/xtext-m6-with-more-documentation-and-stable-api/#comment-1690</link>
		<dc:creator>Heiko Behrens</dc:creator>
		<pubDate>Thu, 19 Mar 2009 14:08:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.1160pm.net/?p=260#comment-1690</guid>
		<description>@Jens: And yes, OmniGraffle rocks!</description>
		<content:encoded><![CDATA[<p>@Jens: And yes, OmniGraffle rocks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Heiko Behrens</title>
		<link>http://www.heikobehrens.net/2009/03/19/xtext-m6-with-more-documentation-and-stable-api/#comment-1689</link>
		<dc:creator>Heiko Behrens</dc:creator>
		<pubDate>Thu, 19 Mar 2009 14:07:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.1160pm.net/?p=260#comment-1689</guid>
		<description>@Jens Yes, the @stable annotation is Xtext specific. We decided to place it there and limit the possibilities of reuse. On the other hand, its implementation is not that complex

@Target({ ElementType.TYPE})
public @ interface Stable {
	String since();
	Class&lt;?&gt; subClass() default Object.class; 
}

and an Xtext specific annotation allows you to find every stable aspect of the API by a simple &quot;Find References&quot;.</description>
		<content:encoded><![CDATA[<p>@Jens Yes, the @stable annotation is Xtext specific. We decided to place it there and limit the possibilities of reuse. On the other hand, its implementation is not that complex</p>
<p>@Target({ ElementType.TYPE})<br />
public @ interface Stable {<br />
	String since();<br />
	Class< ?> subClass() default Object.class;<br />
}</p>
<p>and an Xtext specific annotation allows you to find every stable aspect of the API by a simple &#8220;Find References&#8221;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Heiko Behrens</title>
		<link>http://www.heikobehrens.net/2009/03/19/xtext-m6-with-more-documentation-and-stable-api/#comment-1688</link>
		<dc:creator>Heiko Behrens</dc:creator>
		<pubDate>Thu, 19 Mar 2009 13:55:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.1160pm.net/?p=260#comment-1688</guid>
		<description>@Gunnar: We had this discussion, too. See http://dev.eclipse.org/mhonarc/lists/xtext-dev/msg00187.html as a starting point of this thread in the mailing list. Eventually, we settled with the annotation partly due to tooling capabilites (e.g. &quot;Find References&quot;). Also, the Eclipse API tooling has a resticting tone whereas the @stable annotation declares stable parts. Last not least we want to generate code against interfaces that are not marked as stable. Since Eclipse API tooling cannot distinguish between generated and manually written code this might cause false errors.</description>
		<content:encoded><![CDATA[<p>@Gunnar: We had this discussion, too. See <a href="http://dev.eclipse.org/mhonarc/lists/xtext-dev/msg00187.html" rel="nofollow">http://dev.eclipse.org/mhonarc/lists/xtext-dev/msg00187.html</a> as a starting point of this thread in the mailing list. Eventually, we settled with the annotation partly due to tooling capabilites (e.g. &#8220;Find References&#8221;). Also, the Eclipse API tooling has a resticting tone whereas the @stable annotation declares stable parts. Last not least we want to generate code against interfaces that are not marked as stable. Since Eclipse API tooling cannot distinguish between generated and manually written code this might cause false errors.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jens v.P.</title>
		<link>http://www.heikobehrens.net/2009/03/19/xtext-m6-with-more-documentation-and-stable-api/#comment-1686</link>
		<dc:creator>Jens v.P.</dc:creator>
		<pubDate>Thu, 19 Mar 2009 13:13:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.1160pm.net/?p=260#comment-1686</guid>
		<description>As fas as I understand these annotations, they are not Xtext related, are they? Would be nice to have something like that available for other projects, too.

BTW: I figure the diagram was created with OmniGraffle, wasn&#039;t it? Frankly, I create my diagrams with OmniGraffle, too. Isn&#039;t that weird? Working with GEF everyday, I still use OmniGraffle if I want to produce nice diagrams... Hmm... we definitely have to improve these Eclipse graphical editor things.</description>
		<content:encoded><![CDATA[<p>As fas as I understand these annotations, they are not Xtext related, are they? Would be nice to have something like that available for other projects, too.</p>
<p>BTW: I figure the diagram was created with OmniGraffle, wasn&#8217;t it? Frankly, I create my diagrams with OmniGraffle, too. Isn&#8217;t that weird? Working with GEF everyday, I still use OmniGraffle if I want to produce nice diagrams&#8230; Hmm&#8230; we definitely have to improve these Eclipse graphical editor things.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gunnar</title>
		<link>http://www.heikobehrens.net/2009/03/19/xtext-m6-with-more-documentation-and-stable-api/#comment-1684</link>
		<dc:creator>Gunnar</dc:creator>
		<pubDate>Thu, 19 Mar 2009 10:54:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.1160pm.net/?p=260#comment-1684</guid>
		<description>Heiko, why didn&#039;t you use API tooling but introduced yet another markup that people need to learn? 

I understand that annotations look stronger than JavaDoc tags. But Eclipse API tags are great for expressing what your @Stable annotation does. Plus, they integrate nicely with the Eclipse API tooling.

Example:
&lt;code&gt;@noimplement This interface is not intended to be implemented by clients directly. They must subclass {@link SomeBaseClass} instead.&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>Heiko, why didn&#8217;t you use API tooling but introduced yet another markup that people need to learn? </p>
<p>I understand that annotations look stronger than JavaDoc tags. But Eclipse API tags are great for expressing what your @Stable annotation does. Plus, they integrate nicely with the Eclipse API tooling.</p>
<p>Example:<br />
<code>@noimplement This interface is not intended to be implemented by clients directly. They must subclass {@link SomeBaseClass} instead.</code></p>
]]></content:encoded>
	</item>
</channel>
</rss>
