Re: [stack] So what is a concatenative language?
"William Tanksley, Jr" <[email protected]>
| Newsgroups | gmane.comp.lang.concatenative |
|---|---|
| Message-ID | <[email protected]> |
Christopher Diggins <[email protected]> wrote: > Hi William, > I have responded inline below, but as a result of your suggestions I > have revised the definition: > http://cdiggins.com/2007/04/28/a-definition-of-concatenative-languages-refined/ Ah! That seems plausible. It seems intuitively right (not an indicator of truth, but certainly a good thing for a definition). It's definitely simple and complete, and clearly distinguishes flat from non-flat. There's a pernacious typo in your definition, though. You say that "x represents one or more non-terminals". Of course, you mean that it represents one or more _terminals_. :-) Also, rather than "no other production rules are allowed", I would suspect that "no other forms of production rules are allowed." > > > "Flat concatenative languages are simply the set of all strings over a > > > given alphabet". > > Gut feeling: I think you're right (of course, ignoring semantics such > > as typechecking). Clearly, your new definition is better for flat concatenative languages, since it implies that they are clearly a subset of all concatenative languages. > Thanks for your feedback! You're quite welcome -- thank you for the formal definition. I would like to explore the formal semantics a little, though. I don't know what exactly a "state function" is, for example. Out of curiosity, and as a first attempt at applying this definition, is a regular expression specification language concatenative? > - Christopher -Billy