Andrew Koenig's Bio
Andrew Koenig's career in computing ranges from teaching programming classes at Lowell Observatory to writing the first portable implementation of printf . Andrew was a founding member of the C++ standards committee. He is the author or coauthor of three books and more than 160 magazine articles.
- Why Is Exact Floating-Point Output So Hard?
- Even Simple Floating-Point Output Is Complicated
- Why Language Designers Tolerate Undefined Behavior
- Social Processes and the Design of Programming Languages
- Testing Is Not Verification and Vice Versa
- Not All Bugs Are Random
- Testing Behavior, Not Just Results
- How Can One Test a Program's Average Performance?
- Performance Bugs: Not Just Hard To Detect, But Hard To Define
- Performance Bugs Can Be Hard to Detect
- Abstraction and Performance Bugs
- When Is An Optimization More Than Just An Optimization?
- Practical Advantages of Immutable Values
- Sorting An Immutable List
- How Do You Decide On Intermediate States?
- Reversing an Immutable List
- Introduction to Programming with Lists
- A Simple, Immutable, Node-Based Data Structure
- What Does It Mean To Change An Object?
- Containers That Never Change
- Programming Without Variables
- Theory Versus Practice: The Great Divide in Programming Languages
- Addresses and Nodes: Two Ways To Get Around
- Moving Data and Address Arithmetic
- An Important Move Optimization Is Nearly Invisible