Software Development Info
Contents
Personal Projects
- KbMacro
- a systemwide macro hotkey utility for Windows NT/95/98 that utilizes the
natural keyboard windows key. The source code is available here
- DBWin32
- a useful utility for debugging on Windows NT and 95. The current version
is 1.67 and it comes with full source code.
- DirWalk
- a C++ class that encapsulates Win32 directory traversing
- MapProc
- a utility to map a memory address to a function name, using a Visual C++
MAP file
- InclDep
- a utility to display include file dependencies for C/C++
- CLines
- a utility to count lines of C/C++ source code (ignoring comments and
whitespace) with wildcard and directory traversal support
- Perfect
Hash Function - a Win32 implementation of R.J. Cichelli's perfect hash
function generation algorithm from the January 1980 CACM
- BASIC
Grammar - a PCCTS/ANTLR grammar for a small subset of QBasic
- EditPrn
- a Windows 3.1 File Manager extension which allows you to print or edit
any file, regardless of an extension association
Magazine
Article Source Code
- DBWin32
- A DBWin32 Debugger for Windows, C/C++
Users Journal, October 1996
- ConGUI
- Adding Console I/O to a Win32 GUI App,
Windows Developer's Journal, December
1997
- JCF
- Reading
Java Class Files In C++, C/C++ Users
Journal, April 1998
- CeSock
- Using WinSock
with Windows CE, Windows Developer's
Journal, June 1998
- CRI
- CeRapiInvoke: A
New Feature of Windows CE 2.0, Dr
Dobb's Journal, September 1998
- Semaphores
for CE - Windows
CE API Quirks, Windows Developer
Journal, May 1999
- SafeTerminateProcess
- A Safer
Alternative to TerminateProcess, Windows
Developer Journal, July 1999
- HTML
Parser - Using IE4's HTML Parser, Dr
Dobbs Journal, August 1999
- HP Jornada Hotkey Editor - Windows
CE Power, February 2000
- CESH
Remote File I/O - Exploiting Hidden Features of CESH, Dr Dobbs Journal, May 2000
- Batons
- Batons: A Sequential Synchronization
Object, Windows Developer Journal,
July 2001
- Update:
checkout the results of reader feedback here
Unpublished
Articles
Technical
Presentations
Win32 Development
Links
Windows
CE Development Links
C/C++
Links
- Safe STL
- Cay Horstmann's modified STL that catches common programming errors
- Allan Clarke's Homepage - lots
of useful links and info, including the C++ Tip of the Day
- Steve Summit's C FAQ
- Bob Stout's Snippets Page - a
collection of useful source code and utilities
- Free C Runtime Library - source
and docs for Al Maromaty's free C RTL (subject to commercial use
restrictions)
- Comments on
Item 27 of More Effective C++ - an interesting follow up on a portion
of Scott Meyers' excellent book
- International Obfuscated C Code
Contest - amazing examples of how NOT to write code
- Coronado Tutorials - free online
tutorials for C, C++, Ada, Pascal, and Java
- Code Warrior U - free
online courses on C++ for Win32, C++ for Mac, Java, Embedded Systems, and
more
- Incompatibilities Between
ISO C and ISO C++ - David Tribble's great article on C, C9x, and C++
incompatibilities
- C++ Standard and Library
Architecture - Nathan Myers' page with several good articles on
various aspects of standard C++
- Regex++
- John Maddock's free C++ class lib for regular expressions
Compilers
and Programming Language Links
- Catalog of Free Compilers and
Interpreters
- MIXBuilder -
Bill Menees' Win32 IDE for Knuth's MIX language from his Art of Computer
Programming book series
- LCC - a free
retargetable compiler with many backends. There's also a great
book that describes it's design and implementation
- DJGPP - DJ Delorie's free C/C++
compiler system for DOS.
- Pacific C - free
MSDOS C compiler
- YACC
Grammars - yaccable grammars for several languages (C/C++, Delphi,
Java, etc)
- BTYACC - a backtracking version of
YACC with prebuilt Win32 binaries
- ANTLR (formerly PCCTS) page - ANTLR/PCCTS
is a great parser/lexer generator that puts YACC/Lex to shame
- Parsing Algorithm
Demos - applet demos of recursive-descent, LL(1) table-driven and LALR
parsing
- John Lilley's C++ Parser
Page - a C/C++ parser and preprocesser written using PCCTS
- The Compiler Connection and Job Resource - their motto is
"Linking Compiler Researchers, Compiler Developers,and the
Programmers Who Use Their Products"
- Cosmic Software Compiler
Links
- Mark
Leone's Programming Language Research Page
- The
Teaching About Programming Languages Home Page
- The Language List - an attempt
at a searchable list of all known programming languages
- Programming
Languages for the Java VM - interesting uses of the Java VM in
programming language development and research
- Java Memory Model
- interesting discussion and info and the ups and downs of the
specification
- Harissa - a research Java
bytecode to C compiler
- ILOC - Intermediate
Laguage for an Optimizing Compiler project at Rice University
- VCG -
Visualization of Compiler Graphs project at University of Saarlandes
(Germany)
- Optimization Categories
- descriptive examples of many compiler optimizations
- Journal
of Instruction-Level Parallelism - online journal for architecture and
compiler papers about ILP
- New Jersey Machine Code
Toolkit - a toolkit to build retargetable assembler/disassemblers,
code generators, or other machine code utilities
- Decompilation Page
- great research on decompilation with links to implementations for Java,
C, Visual Basic and more
- Threaded
Code - good tutorial on a technique for implementing interpreters
- Scripting: Higher
Level Programming for the 21st Century - a thought provoking article
by John Ousterhout
- Turbo Pascal 3 Internals -
great doc on the implementation of TP3. Borland now gives away their Turbo language products for
free
Other
Theoretical CS Links
Interesting
People in CS
- Donald E. Knuth -
author of the famous Art of Computer Programming series and one of my
personal heroes
- Michael
Rabin - inventor of the term "nondeterministic" and the
field of probabilistic approximation
- Alan Kay - one of the
famous XEROX PARC researchers and the father of the idea of the laptop
computer
If you'd like to know more about Knuth, Rabin, Kay, and 12 other
fundamental contributors to CS, I highly recommend
Out Of Their
Minds: The Lives and Discoveries of 15 Great Computer Scientists by
Dennis Shasha and Cathy Lazere
- Alan M. Turing - an early and
critical founder of theoretical CS
- John von Neumann
- a brilliant mathematician and early pioneer in computer architecture and
cellular automata
- Grace Murray Hopper
- the inventor of COBOL and the person who coined the term "computer
bug"
- PJ Plauger - a major part of the C++
standardization process. His company, Dinkumware,
provides implementations of the C/C++ standard libraries.
- Richard Feynman - not really a CS
person, but nevertheless a brilliant and intriguing one. He was the key to
solving what happened to the space shuttle Challenger.
- Bjarne Stroustrup - creator of
the C++ programming language
- James Coplien - a major player
in the area of C++ and design patterns
- Scott Meyers - C++ guru and author the
Effective C++ and More Effective C++
- Stan Lippman - another big C++ name
and author of Inside the C++ Object Model, The C++ Primer, and Essential
C++
- Tim Berners-Lee -
original pioneer of the World Wide Web
- Niklaus Wirth - creator of
the Pascal and Modula-N programming languages
- John Ousterhout - inventor of
Tcl/Tk and a big proponent of scripting languages
- Jerry Weinberg - educator and
author of many excellent books on the people and management aspects of
software development
Back to the main page...
mailto:ast@halcyon.com