What is C written in?
C uses a bootstrap chain from B (documented). C is self-hosting.
Relationship Graph
All directly connected languages. Click any node to navigate to its page.
Bootstrap Chain
| Language | Confidence | Notes | Source |
|---|---|---|---|
| B | 85% | Early C compiler bootstrapped from B | Source |
Transpilation
| Language | Confidence | Notes | Source |
|---|---|---|---|
| Nim | 95% | Nim primarily transpiles to C | Source |
| V | 95% | V primarily transpiles to C | Source |
Influenced By
- B — C evolved directly from B at Bell Labs
- BCPL — C directly descended from BCPL via B language
- ALGOL — C adopted block structure and control flow from ALGOL
- ALGOL 68 — ALGOL 68 influenced C's structured programming
- Fortran — BCPL and Fortran both influenced C's design
Languages C Influenced
- C++ — C++ is a superset extension of C
- Objective-C — Objective-C adds Smalltalk messaging to C
- Zig — Zig designed as modern C replacement
- Go — Go's syntax influenced by C
- Python — C influenced Python's syntax and CPython implementation
- D — D designed as improved C/C++
- Perl — Perl influenced by C's syntax and operators
- V — V influenced by C and Go for systems programming
- AWK — AWK influenced by C syntax
- PHP — PHP influenced by C's syntax
- Bash — Bash influenced by C's operators and syntax
- Ada — Ada influenced by C's systems programming
Frequently Asked Questions
What language is C written in?
C is primarily implemented in B. See the implementation section above for details and source references.
What languages influenced C?
C was influenced by B, ALGOL, Fortran among others. See the influence section above for the full list.
Which languages did C influence?
C influenced C++, Objective-C, Ada among others.
Is C self-hosting?
Yes, C is self-hosting — its compiler can compile itself.
Evidence Sources
- https://en.wikipedia.org/wiki/C_(programming_language)
- https://en.wikipedia.org/wiki/B_(programming_language)
- https://en.wikipedia.org/wiki/C%2B%2B
- https://en.wikipedia.org/wiki/Objective-C
- https://www.perl.org/get.html
- https://www.lua.org/about.html
- https://github.com/python/cpython
- https://github.com/php/php-src
- https://github.com/ruby/ruby
- https://www.r-project.org/
- https://go.dev/doc/faq#history
- https://github.com/iohub/rustboot
- https://github.com/ocaml/ocaml
- https://gitlab.haskell.org/ghc/ghc
- https://gcc.gnu.org/wiki/History
- https://github.com/erlang/otp
- https://spidermonkey.dev/
- https://webkit.org/
- https://github.com/dotnet/runtime
- https://github.com/swiftlang/swift
- https://nim-lang.org/docs/backends.html
- https://vlang.io/
- https://en.wikipedia.org/wiki/Ada_(programming_language)
- https://en.wikipedia.org/wiki/Glasgow_Haskell_Compiler
- https://en.wikipedia.org/wiki/Python_(programming_language)
- https://en.wikipedia.org/wiki/D_(programming_language)
- https://ziglang.org/
- https://en.wikipedia.org/wiki/Go_(programming_language)
- https://en.wikipedia.org/wiki/Julia_(programming_language)
- https://en.wikipedia.org/wiki/Erlang_(programming_language)
- https://en.wikipedia.org/wiki/Cython
- https://en.wikipedia.org/wiki/Perl
- https://en.wikipedia.org/wiki/PHP
- https://en.wikipedia.org/wiki/Bash_(Unix_shell)
- https://en.wikipedia.org/wiki/AWK
- https://en.wikipedia.org/wiki/Dyalog_APL
- https://en.wikipedia.org/wiki/Squeak
- https://en.wikipedia.org/wiki/Standard_ML
- https://en.wikipedia.org/wiki/MIT_Scheme
- https://en.wikipedia.org/wiki/S_(programming_language)
- https://en.wikipedia.org/wiki/Icon_(programming_language)
- https://en.wikipedia.org/wiki/Bourne_shell
- https://en.wikipedia.org/wiki/MATLAB
- https://en.wikipedia.org/wiki/Miranda_(programming_language)
- https://en.wikipedia.org/wiki/ABC_(programming_language)
- https://en.wikipedia.org/wiki/Newsqueak
- https://en.wikipedia.org/wiki/Modula-3
- https://en.wikipedia.org/wiki/Tcl
- https://en.wikipedia.org/wiki/J_(programming_language)
- https://en.wikipedia.org/wiki/Alef_(programming_language)
- https://en.wikipedia.org/wiki/Dylan_(programming_language)
- https://en.wikipedia.org/wiki/GNU_Guile
- https://en.wikipedia.org/wiki/Limbo_(programming_language)
- https://en.wikipedia.org/wiki/GNU_Fortran
- https://en.wikipedia.org/wiki/Cyclone_(programming_language)
- https://luajit.org/
- https://en.wikipedia.org/wiki/Pharo