Articles tagged C++
- Hiding iterator boilerplate behind a Boost facade
- Binary search revisited
- Binary search returns … ?
- Next permutation: When C++ gets it right. An investigation into a classic algorithm for generating the distinct permutations of a sequence in lexicographical order.
- Code Rot. What happens when we stop tending to our code? It decays. This article investigates why.
- Converting integer literals in C++ and Python
- Inner, Outer, Shake it all abouter. Encapsulation is about allocating responsibility and easing utility rather than protecting data.
- Copy, load, redirect and tee using C++ streambufs. The C++ iostream library separates formatting from lower level read/write operations. This article shows how to use C++ stream buffers to copy, load, redirect and tee streams.
- Generic documentation
- Longest common subsequence. An investigation into the classic computer science problem of calculating the longest common subsequence of two sequences, and its relationship to the edit distance and longest increasing subsequence problems.
- comp.lang.name? Python was named after a comedy troupe. This note discusses what makes a good name for a computer language.
- Books, blogs, comments and code samples
- Sums and sums of squares in C++. Reduce is a higher order function which applies a another function repeatedly to a collection of values, accumulating the result. Well known to functional programmers, reduce is also a standard C++ algorithm.
- Looping forever and ever
- Syntactic Sugar
- Macros with halos
- Fixing header file dependencies. A simple script to check header files are self contained
- Stop the clock, squash the bug. Which is better, a clock which loses a minute a day or one which is stopped? An investigation into how we find and fix software defects.
- Top Ten Percent. The most efficient way to sort the top 10% of a collection.
- Top Ten Tags. Choosing the right algorithm to select the N largest items from a collection.
- From Hash Key to Haskell. A note on keys, characters, smileys, digraphs and Haskell.
- Elegance and Efficiency. Must elegant code be efficient? This article investigates.
- Big City Skyline Puzzle. Comments on a novel computer science puzzle. When machine resources are scarce, a compiled language offers precise control.
- Ongoing Peer Review
- Pitching Python in three syllables
- Koenig’s first rule of debugging. The problems caused by the C++ compilation model, dependencies and cryptic compile diagnostics. If an expert like Andrew Koenig can’t get it right, what hope for the rest of us?
- Shameful Names
- He Sells Shell Scripts to Intersect Sets. The Unix command shell contains a lot of what I like in a programming environment: it’s dynamic, high-level, interpreted, flexible, succinct. This article shows the Unix tools in action.
- The Third Rule of Program Optimisation
- Evolving Python in and for the real world
- Introducing Java
- Mixing Python and C++
- Release then Test
- Casualties in the great computer shootout. An investigation into various dimensions of some speed benchmark programs.
- Retro-fitting coding standards
- Code Craft
- Printed C++ Journals
- Review of Pete Becker’s TR1 Book
- Smart Pointers, Dumb Programmers. A note describing how a smart pointer tripped me up.
- Joined Output and the Fencepost Problem. Items and the spaces between them: some notes on the fencepost problem and joining up strings.
- Computer Language Complexity
- Complacency in the computer industry
- The Lazy Builder’s Complexity Lesson. A discussion of algorithmic complexity, and a demonstration of how the C++ standard library allows programmers to write code which is both concise and efficient.
- String literals and regular expressions. An article about string literals, escape sequences, regular expressions, and the problems encountered when mixing these together.
- There’s no escape??!
- Parsing C++
- Are List Comprehensions the Wrong Way Round?
- Message to Self. What’s this?
- Octal Literals
- A Subversion Pre-Commit Hook. How to install and test a simple Subversion pre-commit hook script.
- Binary Literals
- Readable Code
- Built in Type Safety?
- The case against TODO. A neat label for work in progress or an easy way to disguise the flaws in a codebase?
- Metaprogramming is Your Friend. An investigation into metaprogramming techniques used by lazy C, C++, Lisp and Python programmers.
- A Mini-Project to Decode a Mini-Language
- Code in Comments. Don't comment out dead code, delete it!