Channels ▼

Blogs

September 19, 2014

Using a Loop Invariant to Help Think About a Program

Last week, I talked about how to write a loop invariant. I would like to continue this discussion by paraphrasing a beautifully elegant example that Dijkstra used in A Discipline of Programming.

September 18, 2014

At Your (Android) Service

To the user, the alien program just happens to contain a screen that looks just like yours.

September 17, 2014

Setting Up a Test Environment for C++14

A little clever work and I was able to quickly set up a test machine with everything I needed on Ubuntu running in a Microsoft Azure VM.




C/C++ Source Code

c_header.txt

January 07, 2009

Published source code accompanying the article by R. Samuel Klatchko in which he examines unnecessary coupling. One issue with the common C compilation model is that it can easily lead to unnecessary coupling between files. But decoupling those files isn't necessarily easy either. - C/C++

Associated article: Decoupling C Header Files

Tags: C/C++     Open Source    



lock_d.txt

December 03, 2008

Published source code accompanying the article by Bartosz Milewski in which he examines the two major problems in concurrent programs -- data races and deadlocks. The solutions that Bartosz presents in the D language is based on a deadlock-avoidance protocol. Also see LOCK_D.ZIP. - C/C++

Associated article: Lock Options

Tags: C/C++     Parallel     Design    



green.txt

October 23, 2008

Published source code accompanying the article by Jeremy Blackburn and Ken Christensen in which they create a "green telnet" that lets clients transition to a low-power, sleep state, thereby reducing energy consumption. - C/C++

Associated article: Green Telnet

Tags: C/C++     Design     Global Developer    



disentgl.zip

July 30, 2008

Unpublished source code accompanying the article by Stephen Gross in which he examines an object-oriented technique for "unpacking" the underlying concepts present in a given class. - C/C++

Associated article: Disentangling Concepts in Object-Oriented Systems

Tags: C/C++     Design    



fpmath.zip

March 28, 2008

Unpublished source code accompanying the article by Anthony Williams in which he shows how understanding and using fixed-point math can result in real performance gains. Requires UNZIP/PKUNZIP to extract. - C/C++

Associated article: Optimizing Math-Intensive Applications with Fixed-Point Arithmetic

Tags: C/C++     Embedded Systems     JVM Languages     .NET     Design     Mobile     Open Source     Global Developer     Tools     Parallel    



range.txt

March 19, 2008

Published source code accompanying the article by Michael Orlov in wihch he examines the Greatest Common Divisor algorithm which computes the maximal number which divides its two arguments--and can be used as an efficient random-number generator. - C/C++

Associated article: Random Numbers in a Range Using Generic Programming

Tags: Security     C/C++     Tools     Open Source     Parallel     Design    



byzantin.zip

March 18, 2008

Unpublished source code accompanying the article by Mark Nelson in which he examines the Byzantine General's Problem, an agreement protocol that's built around an imaginary General who makes a decision to attack or retreat, and who must communicate his decision to his lieutenants. Requires UNZIP/PKUNZIP to extract. - C/C++

Associated article: The Byzantine Generals Problem

Tags: C/C++     Open Source     Parallel     Design    



logcpp.zip

September 05, 2007

- C/C++

Associated article: Logging In C++

Tags: Parallel     C/C++    



fire.zip

August 03, 2007

- C/C++

Associated article: Multithreaded Asynchronous I/O & I/O Completion Ports

Tags: Open Source     .NET     Parallel     C/C++    



polycpp.txt

July 02, 2007

Published source code accompanying the article by Michael Dowell in which he presents three different techniques for making operators polymorphic. - C/C++

Associated article: Simulating Polymorphic Operators in C++

Tags: .NET     Security     C/C++     Open Source     Parallel     Design    





Video