# The C++ programming language At first, Bjarne Stroustrup wanted an extension of the C language, but it eventually evolved into its own high-level language. While the language is general-purpose, it's frequently a heavily-used language for [audio engineering](engineering-audio.md) and [game development](cs-software-gamedev.md) from how powerful it is. While it is *very* powerful, though it can sometimes be unwieldy. One of its downsides is that it's *very* complex, and those complexities make it difficult to communicate algorithms to other developers or quickly modify code. There has been a movement to replace all C++ code with [Rust](cs-langs-specific-rust.md), though Rust can process a little slower at times. Some attempts to fix that have been through languages like Zig, but then it removes [garbage collection](cs-langs-features.md) in the process (which is an inherent risk).