Browse by Tags

All Tags » Lexer, Parser, Compiler, Oh My! (RSS)

Language parsing and compiler design doesn't have to be hard, but boy this book really sucks!

How'd you like that for an opening title? Did it grab your attention? Hell, your reading this far so I guess it did. The book I'm focusing on here is Build Your Own .NET Language and Compiler and please, don't click the link and then go buy it. I don...

Natural Language & AI: Dissecting the process of reading.

It has been a few years since I've seen the reports on how people read and more specifically how speed readers get so darn fast, but I recently got an email that demonstrated the concept rather well. Rather than explain the research study in plain words...

Moving most of my Regular Expressions/Language Processing content to http://blogs.regexadvice.com/justin_rogers

I think that you need the correct site for each type of content in many cases. I've posted a few articles now on language processing and regular expressions, but my category list for weblogs is getting quite long. I'm definitely in search of a set of...

How hard/easy is an HTML parser using the BasicLex/BasicParser design?

HTML always seems a popular format for a processor/compiler of some type or another. HTML really is only useful in either it's abstract form, as the HTML, or in a more well-formed syntax. XML is always nice because you can easily process it with the DOM...

Adding keywords to BasicParse, keeping it short and sweet.

Darren was curious about the tokenizer and about how to add keywords to the BasicParse language. He had some thoughts on the idea, so I'll help him out and post a somewhat full example. His truncated comments: I was going to ask you how you would add...

Introducing symbol tables with a C# example using 'get' as the point of interest.

Now that I'm on my compiler kick, I'll try to add some features to the compiler I've already implemented to make it more mainstream and useful as a more complete sample. To start, I want to introduce the concept of the symbol table and it's importance...

Added a command line build process for the lexer, 2 parsers, and a test harness.

Though most of the code was in the article, you couldn't easily build a complete sample from for the state/transition compiler. I've uploaded a project that contains a build process for the lexer, both parsers that have been produced up to now, and a...

Examining state/transition graphing to extend BasicParse (or rather rewrite it)

The old parser was just too ugly to leave sitting around so I've implemented a slightly more modularized version using actual compiler techniques. Here is the skinny: Abstract: The previous parser was a linear parser. All state was handled in a single...

Added a section to the BasicParse article covering making changes/additions to the code.

The first parser was fairly straightforward, but the first question I got was related to making changes because the format was too verbose or unsuitable for certain types of configs. That is always going to happen. Heck, why does C# use for instead of...

Articles and full code for BasicParse, a small parser/compiler implementation for a pseudo Bind configuration format.

Well, I finally found out what kind of configuration files I was parsing. Turns out that I had a Bind like configuration file and I made some assumptions as to what the real underlying format was. I was wrong about the underlying format, but the resulting...
More Posts Next page »