Friday, 20 February 2009

The Line Begins to Blur

The 7zip tool has a command line program to go along with the GUI integrated into Windows explorer. This is well documented here.

High performance fractal viewer written in Java - beautiful images, and good performance. Seems scalar loops in Java get good performance, and you can write a portable GUI on top and have arbitrary precision maths support from the libraries. The symmetry in chaos book describes interesting fractals. Its a sign of changing times that the example programs were written in QBasic.

Some C++ objects are non-copyable. Some patterns recur. Heh.

Tuesday, 17 February 2009

Out Of The Shadows

The sphereflake - nice procedural model generation and raytracer in ~100L of C++. Sorting algorithms have a .com web site.

Tuesday, 10 February 2009

Wake Up

Someone, somewhere, is complaining about the offensive content of the internet. And sending cease and desist letters, to chilling effect.

Someone, somewhere, is wishing a file format they need to process was documented. People write books about things lacking documentation. Like Windows 2000, and its assorted development tools. Someone (who?) may be programming Windows applications in assembler.

John Levine's Linkers and Loaders book is available online in draft form.

Finally, online hex to binary/decimal converters are useful.

Friday, 6 February 2009

The Thin Line Between Love and Hatred

Visual Studio 2005 has a nice debugger; I spend quite a lot of time there. It is certainly an improvement over gdb. Some of its nicer features are the visualisations of the programs data structures - STL containers, arrays of characters as strings. The visualisation of data structures can be customised, and this is good; Sadly, it is not a documented feature. The autoexp.dat file contains the relevant specifications.

It can be used to provide custom views of data structures specific to programs and libraries. One example is the Chromium browser from google. (and links 1,2,3,4,5). It can also be used to auto expand watched data.

The parser and evaluator for these leave much to be desired. Syntax errors are silently ignored (the preview, or child view, the visualiser for a given type is unchanged) leaving the display unchanged. If not ignored, they are reported in a single modal dialog. If an error is not syntactic, the debugger will crash. Possibly immediately, possibly subsequently in the middle of a debugging session on inspecting certain values.

Beyond the implementation quality issues, the lack of documentation is the main problem. The syntax, while not good, would be improved by a smattering of documentation on the MSDN.

Its a shame, because it is obviously a (potentially) useful feature. It certainly was useful for substituting names for numeric codes in data views (when it didn't crash...)

The Visual Studio command line options are documented on MSDN - some obscure but useful ones. Possibly the most useful is /debugexe - to invoke the debugger on a program from the command line.

Wednesday, 4 February 2009

Try, Try, Try

People try to explain maths on the internet; periodically, I try to understand it once more. Teleworking, but from Edinburgh...