The Life of a Programmer

Archives

All of the things labelled as Posts, so that crawlers have a place to find them.

Leaf: Preserving “lvalue” status

I’ve been reworking how I handle basic type conversion in Leaf. This is a mechanism which allows implicit conversion of simple types. As part of

What is a System Language?

Not all languages are made with the same purpose in mind. When it comes to designing a new language like Leaf, it’s important to choose

Divorcing a value from its name

Understanding “values” is perhaps the most critical part of understanding programming. We are inundated with a variety of terms like “by value”, “by reference”, “member

How to handle an error

Error handling should be simple. It can become mired in complexity, but I don’t believe it has to be that way. If we stay focused

Of Faults and Errors: Who’s to blame?

Is there a difference between a “fault” and an “error” within a computer program? A number of people commented on my previous article suggesting this

What is a closure?

Closures have been around a long time yet have experienced a resurgence in the last decade. They were first implemented in the functional language Scheme

A trail through custom languages

How often does one need to write a custom language? Many projects often shun them, but I think domain specific languages are important. They offer

The syntax of a conditional

Conditionals are a key construct in programming: from the simple if statement, to loops and switches, and even to dynamic mapping. The essence of program

Complexity of simple data types

Sometimes the simplest of things have complex answers. In programming we like to think of simple data types, but in reality there aren’t any. While

Pitfalls of Performance Testing

Beware the casual performance test, it will lie to you. It is simple to write something that gives you timings, but it is difficult to

Can a language be safe?

Some languages hand us sharp knives and encourage us to play with them. Other languages put us in padded rooms and discourage us from doing

What’s to love about C?

Antiquated, clunky, and unsafe. Though beloved to some, C is a language that many choose to hate. The mass opinion is indeed so negative it’s

How to choose a programming language?

Each new project, whether a standalone program, or a component for an existing program, faces a choice of programming language. Just using what is most