9fans archive / 2008 / 10 / 415 / prev next From: Eris Discordia <eris.discordia@gma...> Subject: Re: [9fans] non greedy regular expressions Date: Tue, 28 Oct 2008 15:07:25 +0000 Thanks for the explanations. The lowlife learns a bit or two :-) --On Tuesday, October 28, 2008 2:51 PM +0000 "Brian L. Stuart" <blstuart@bel...> wrote: >> > This guy seems to blur the distinctions here. His discussion >> >> He doesn't. If one reads the whole section part of which was quoted one >> will see that he clearly states DFA and NFA are theoretically >> equivalent, but then goes on to explain that DFA and NFA >> _implementations_ are not identical. > > Actually, that's why I said "seems to." Basically, what he > should be saying is that some people have found it easier > to add elements to the NFA model that augment the grammar. > But then he goes on to use the initials NFA when he really > means the extensions thereof. This creates in the reader's > mind the misimpression that there's something magically > different between an NFA and a DFA, theoretically or > implementationally. They have exactly the same expressive > power in both realms. Besides, nondeterminism can only > be simulated when running on a deterministic computer. > That's actually the insight behind the NFA to DFA construction. > So talking about an "NFA implementation" is rather artificial. > >> They learn slowly, hardly, painfully--they aren't smart. If >> possible they'll learn less rather than learn more. What the "hacker" >> denies the lowlife is the opportunity to exist free of "GNU-is-wrong" or >> "X-is-wrong" blemish. > > Look at it this way. The people here aren't trying to > create blemishes on anything. Rather we are trying to > help your learning process. We're trying to head off > the tendency for people to jump from "it was easy to > learn how to do X in this tool" to "how this tool does > things is better." Instead, before asserting something > is better or asking for others to write software according > to a personal preference, it is important to broaden > your understanding so that you know what the options > really are and what the design decisions really imply. > Implementing a laundry list of features without that > perspective simply produces bad software. > >> It's >> good--for the lowlife, of course--to know the wonders they see didn't >> spring into existence out of the blue. > > That's why we teach the theory that everyone seems to > want to complain about. Building on Newton, if we want > to see farther than those before us, we need to know > those before us well enough to climb onto their shoulders. > No software is based on Hogwarts' technology, and no > good software comes from the "random walk method of > programming." It is the product of intellectual reasoning. > Criticism of the result won't be taken too seriously > if the critic shows they have not understood the reasoning > behind it. > > BLS > >