<?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/"
	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>Comments on: M Grammar Vs. Gold Parser</title>
	<atom:link href="http://rogeralsing.com/2008/11/10/m-grammar-vs-gold-parser/feed/" rel="self" type="application/rss+xml" />
	<link>http://rogeralsing.com/2008/11/10/m-grammar-vs-gold-parser/</link>
	<description></description>
	<lastBuildDate>Sat, 28 Jan 2012 14:35:30 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Don Box</title>
		<link>http://rogeralsing.com/2008/11/10/m-grammar-vs-gold-parser/#comment-307</link>
		<dc:creator><![CDATA[Don Box]]></dc:creator>
		<pubDate>Fri, 14 Nov 2008 08:09:06 +0000</pubDate>
		<guid isPermaLink="false">http://rogeralsing.wordpress.com/?p=153#comment-307</guid>
		<description><![CDATA[Frans,

We target a GLR engine.

The M compiler compiles language definitions into a binary form (an MGX file).

You can initialize our engine from that form and then start parsing input text to produce graphs.

Yes, your language definition needs to specify the rules for turning text into graphs. 

Whether people will find that language easier or harder to use than writing a recursive descent parser by hand remains to be seen.  Early indications have been promising, but these are early days.

I will say that from our experience building the M language family that authoring parsing rules has by no means been the hardest part of building the language :-). 

DB]]></description>
		<content:encoded><![CDATA[<p>Frans,</p>
<p>We target a GLR engine.</p>
<p>The M compiler compiles language definitions into a binary form (an MGX file).</p>
<p>You can initialize our engine from that form and then start parsing input text to produce graphs.</p>
<p>Yes, your language definition needs to specify the rules for turning text into graphs. </p>
<p>Whether people will find that language easier or harder to use than writing a recursive descent parser by hand remains to be seen.  Early indications have been promising, but these are early days.</p>
<p>I will say that from our experience building the M language family that authoring parsing rules has by no means been the hardest part of building the language :-). </p>
<p>DB</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Frans Bouma</title>
		<link>http://rogeralsing.com/2008/11/10/m-grammar-vs-gold-parser/#comment-298</link>
		<dc:creator><![CDATA[Frans Bouma]]></dc:creator>
		<pubDate>Tue, 11 Nov 2008 10:07:42 +0000</pubDate>
		<guid isPermaLink="false">http://rogeralsing.wordpress.com/?p=153#comment-298</guid>
		<description><![CDATA[GP is LR based, so it has to generate the action/goto tables before it can say anything about the grammar properly (as problems crop up during that process, as it&#039;s otherwise too complex). Mg&#039;s therefore very likely to be LL* based, similar to ANTLR. The ANTLRWorks toolkit is also very cool and allows you to visualize things &#039;as they are at that moment&#039; as well, completely with step by step debugging of the complete parse process of the language. 

But I think that all that is nice and all, but doesn&#039;t take away the real problem: WHICH terminals and non-terminals to define and how exactly to be able to parse a given example text which is then accepted as valid AND for example make sure another text isn&#039;t accepted as valid.]]></description>
		<content:encoded><![CDATA[<p>GP is LR based, so it has to generate the action/goto tables before it can say anything about the grammar properly (as problems crop up during that process, as it&#8217;s otherwise too complex). Mg&#8217;s therefore very likely to be LL* based, similar to ANTLR. The ANTLRWorks toolkit is also very cool and allows you to visualize things &#8216;as they are at that moment&#8217; as well, completely with step by step debugging of the complete parse process of the language. </p>
<p>But I think that all that is nice and all, but doesn&#8217;t take away the real problem: WHICH terminals and non-terminals to define and how exactly to be able to parse a given example text which is then accepted as valid AND for example make sure another text isn&#8217;t accepted as valid.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

