Skip to content

{ Tag Archives } compilers

Designing for Problems Too Big to Test

In this post, I will show an example of where using unit testing as a design methodology does not work, and how to produce a design for correct code anyway. There is no single design methodology which works for all problems, so it’s useful to have a variety of tools at your disposal.
This post is [...]

Also tagged ,

Speaking at Dog Food Conference, CloudDevelop, and CodeMash

I’ll be speaking about compilers, testing, and machine learning at a conference near you! Abstracts for all of these sessions are on my Presentations page.

Programs that Write Programs: How Compilers Work Dog Food Conference and CodeMash
What Testing Can Never Do and How to Do It Anyway Dog Food Conference
Machine Learning with Azure ML CloudDevelop

Share This [...]

Also tagged , , , ,

When Does Lexing End and Parsing Begin?

I had an interesting bug in my compiler: The parser would fail on blank lines. To a certain degree, this makes sense; the formal grammar of the language does not include blank lines. This is invalid input! On the other hand, every programming language ever invented, as far as I know, simply ignores them. That [...]

Also tagged ,

Let’s Build a Compiler… In F#!

I’m building a small compiler for a toy language which emits .NET executables, implemented in F#. Demo compilers are a dime a dozen, but there are a few things which make this project distinct:

No lexer or parser generators are used. The entire compiler is written from the ground up, and is intended to be fairly [...]

Also tagged ,

Great CS Textbooks, Cheap

I’m probably late to this party, but I’ve discovered that you can find incredible deals on used CS textbooks at Amazon, especially for older editions.
For example, I recently ordered a copy of Programming Language Pragmatics, by Michael L. Scott. It’s $63 new for the hardcover or $43 on a Kindle. I got a used copy of [...]

Also tagged

Comparing C#, C++, and Delphi (Win32) Generics

C#, C++, and Delphi all have a generic type and method language feature. Although all three languages are statically typed, they implement generics in very different ways. I’m going to give a brief overview of the differences, both in terms of language features and implementation. I presume that Delphi Prism generics work essentially the same [...]

Also tagged , , , ,

Bad Behavior has blocked 1137 access attempts in the last 7 days.