Talk:Formal grammar/Archive 1

message: Interesting remark about the Lindenmayer systems! I didn't know those. Is there really no distinction between terminals and non-terminals? I saw that there is a distinction between variables and constants. I also got the impressession that L systems were always context-free. Is that correct? Finally it should probably be explained somewhere that L systems are not about defining a formal language but about defining (infinite) lists (or trees?) of strings where every next string is defined by applying all the rules to all the variables once. -- Jan Hidders 15:20 Aug 8, 2002 (PDT)
No, L-systems aren't always context free.  Some are context free and some are context sensetive, just like formal grammars (c.f. ).  The terms constant and variable in an L-system don't really affect its behavior.  In a given L-system, if you take a constant and reclassify it as a "variable", that doesn't change the output of the system.  But for a grammar, if you take a terminal and reclassified it as a "nonterminal", that usually changes the language that is produced.  L-systems also differ in the order in which the rules are applied.  A given rule is applied at every possible place in the generation n string before being applied to any parts of the generation n+1 string.  Both grammars and L-systems define a sequence of strings.  For grammars, we usually don't care about the sequence, but sometimes we do (e.g. when compilers parse).  The same is true for L-systems. Usually we just care about the final string (for a grammar) or the limit (for an L-system).   The only important difference between the two that isn't mentioned is that L-systems usually produce an infinite sequence.  I'll add that.  --LC 19:16 Aug 8, 2002 (PDT)
I'm very confused about the first part of this page (and so everything after as well) 1. S -> aSb 2. S -> ba.  How does it know which rule to use, 1 or 2?  The example shows it using rule 1 a few times then suddenly using rule 2 and being done.  I would think it would keep using rule 1 forever.  Or if it is cycling through the rules it would use rule 1 one time then rule 2 the second and stop.  But the example showing rule 1 at least twice.  Nothing in rule 1 seems to tell it to use rule 2 after X number of times, that I can tell.  (JLJ)
:One has at each time a free choice as to which rule to use, as long as it's applicable. If it were specified which rule to use in every situation, you could get only one word out of a grammar, but it should get a whole language, that is a large class of words. Andre Engels 13:20, 26 Sep 2003 (UTC)
thread_title:  Lindenmayer systems 

message: Cleanup from May 2005
This article needs some additional context and information to help make it accessible to more readers.  For example, students of linguistics and computer science should find this article a workable entry point and a helpful guide to this area of knowledge.
In general:
* The article uses lots of abstract examples.  It would greatly benefit from some concrete examples using real computer and natural languages.
In the introduction:
* One important consideration is to explain the application of formal grammars.  How are they used in computer science?  The article Generative grammar explains that formal grammars are used in the study of natural languages, which is an important point not mentioned in this article.
* It seems that there should be some mathematical relationship between generative and analytical grammars.  If so, what is it?  (This is made clearer later on, in the introduction to analytic grammars.)
* What types of languages are described by and studied using these types of grammars - computer languages?  Natural languages? (The answer is both.)
In the section on generative grammars:
* There is a lot of very readable material in Generative grammar, and a lot of mathematical material in the section of this article on generative grammars.  A comprehensive article could use both.  It seems that the other article should be merged with the appropriate section in this article, or vice versa.
* The production example in the introduction would be clearer if presented in a vertical format.
* In accordance with Wikipedia style, the subsection "formal definition" should be pushed to the end of the section, to move less technical content (accessible to a wider audience) up front.
* In the section explaining the different types of generative grammar, it's not made very clear that the later types of grammars are proper subsets of earlier types.
* Can we get some examples of theories of grammar of various types?
In the section on regular grammars:
* It should be noted that epsilon represents the empty string.
The section on analytic grammars is very short.
--Beland 02:31, 3 May 2005 (UTC)
thread_title:  Expert attention needed 

message: This article has been flagged with an  tag and indeed has some issues. Since it falls within my area of expertise, I intend to edit boldly. Not before letting others here have an opportunity to discuss this, however. Please let's discuss any concerns here, first. One thing I certainly will attempt is a standardization of the notation to the literature, as in S \Rightarrow a b c rather than the long arrow used as it stands. Also, a lot of citations in the relevant literature, et cetera. OK ... thoughts? -- QTJ 15:34, 23 October 2006 (UTC)
replies: text: Going to try this the slow way first and see how it fares. :-) -- QTJ 00:17, 24 October 2006 (UTC)
replies: text:  PS: If you want to play edit tag, we can take down the  tag for the time being? -- QTJ 00:19, 24 October 2006 (UTC)
replies: text:  Sure. Ruakh 14:39, 24 October 2006 (UTC)
replies: text:  OK -- done. Let the games begin. -- QTJ 18:21, 24 October 2006 (UTC)

text:  Tag -- you're it. -- QTJ 05:51, 25 October 2006 (UTC)
replies: text:  After the next wave, time to put in some reliable sources. -- QTJ 05:54, 25 October 2006 (UTC)
replies: text:  I put in some first references. -- QTJ 17:56, 26 October 2006 (UTC)
thread_title:  Intention to Revise/Edit Boldly