All Programming Langs are actually just C/C++

All Programming Langs are
actually just C/C++
m
number of times other languages repositories used that language

Take note of how all these languages actually use C in some part of there codebase.

Besides Golang, good for you πŸ˜‹

Lets do some data scraping!

I made a quick bash script to scrap popular programming langs's github "languages" stat. heres results


langs=(python/cpython" "ruby/ruby" "golang/go" "Perl/perl5" "openjdk/jdk" "JuliaLang/julia" "php/php-src" "rust-lang/rust" "nim-lang/Nim" "ziglang/zig)
for reponame in ${langs[@]}; do
     
    language=`curl -s https://api.github.com/repos/${reponame}/languages | jq`

    echo "$reponame" : $language,
done

{
"python/cpython" : { "Python": 32188651, "C": 16711336, "C++": 369586, "M4": 203654, "HTML": 188327, "Batchfile": 75043, "Shell": 57220, "Assembly": 49121, "Roff": 39480, "Makefile": 35874, "Objective-C": 26849, "Common Lisp": 24579, "PLSQL": 22886, "PowerShell": 20248, "Rich Text Format": 6936, "DTrace": 2196, "CSS": 1325, "XSLT": 1217, "VBScript": 70 } ,
"ruby/ruby" : { "Ruby": 32914747, "C": 14849831, "C++": 1555350, "Yacc": 1151497, "Makefile": 970413, "M4": 177346, "Roff": 116776, "Python": 42545, "GDB": 36134, "Ragel": 29755, "HTML": 19540, "CSS": 16546, "JavaScript": 14769, "Shell": 14361, "Assembly": 13918, "Batchfile": 12158, "Emacs Lisp": 4051, "sed": 1893, "Scheme": 557, "Raku": 497, "Perl": 187 } ,
"golang/go" : { "Go": 44330487, "HTML": 2621340, "Assembly": 2548000, "C": 106315, "Shell": 53983, "Perl": 31365, "JavaScript": 20486, "Python": 15702, "Batchfile": 8393, "C++": 917, "Makefile": 748, "Dockerfile": 506, "Awk": 450, "Fortran": 394 } ,
"Perl/perl5" : { "Perl": 25137134, "C": 15446507, "Shell": 1436240, "XS": 1225838, "C++": 477832, "DIGITAL Command Language": 238295, "PLSQL": 163742, "Makefile": 133413, "Pascal": 126071, "PHP": 116584, "Yacc": 48266, "Prolog": 24588, "Roff": 19777, "Objective-C": 4110, "Assembly": 3657, "Batchfile": 2696, "POV-Ray SDL": 2196, "TeX": 1708, "DTrace": 491, "Emacs Lisp": 312 } ,
"openjdk/jdk" : { "Java": 352745839, "C++": 60529877, "C": 26274744, "Assembly": 11161724, "Objective-C": 1930946, "HTML": 1551733, "XSLT": 1139326, "Shell": 840067, "Roff": 801118, "M4": 732602, "Hack": 589099, "Python": 240825, "JavaScript": 93945, "Makefile": 43213, "Mathematica": 33636, "DTrace": 32222, "Metal": 32216, "Awk": 28914, "CSS": 8616, "GDB": 5042, "Perl": 4708, "sed": 3129, "Batchfile": 1713, "AppleScript": 1676, "Red": 396, "SourcePawn": 222 } ,
"JuliaLang/julia" : { "Julia": 10896092, "C": 2662268, "C++": 1615855, "Scheme": 487054, "Makefile": 120494, "LLVM": 70638, "Pascal": 50776, "Clojure": 34978, "Shell": 33060, "Objective-C": 25812, "PHP": 19964, "Assembly": 13047, "Inno Setup": 7142, "Python": 6360, "JavaScript": 4687, "Rich Text Format": 2850, "DTrace": 678, "AppleScript": 215, "Dockerfile": 140, "GDB": 76 } ,
"php/php-src" : { "C": 80710828, "PHP": 26122575, "M4": 413963, "C++": 351232, "Shell": 303926, "Lua": 272151, "JavaScript": 196996, "Assembly": 189907, "Lex": 97599, "Yacc": 83601, "Makefile": 32866, "Roff": 31543, "GAP": 23475, "GDB": 13366, "Batchfile": 10885, "XSLT": 7715, "DTrace": 4514, "Awk": 2920, "HTML": 411 } ,
"rust-lang/rust" : { "Rust": 51756122, "Python": 222228, "JavaScript": 179417, "Shell": 167490, "Makefile": 165291, "C++": 145890, "CSS": 84232, "Dockerfile": 74374, "HTML": 63835, "C": 32306, "Roff": 12701, "Assembly": 11973, "RenderScript": 11434, "Pascal": 7471, "XSLT": 2439, "RPC": 863, "CMake": 640, "Puppet": 340, "Batchfile": 280 } ,
"nim-lang/Nim" : { "Nim": 11906377, "HTML": 188741, "C": 57559, "CSS": 40884, "Python": 28435, "C++": 22541, "NSIS": 10651, "Shell": 8935, "Assembly": 4495, "Batchfile": 2928 } ,
"ziglang/zig" : { "Zig": 28851186, "C++": 3668324, "C": 161614, "JavaScript": 77192, "CMake": 62145, "Shell": 31763, "HTML": 18883, "Python": 2892, "Batchfile": 1746, "Objective-C": 560, "Objective-C++": 469, "Assembly": 434 } ,
}

Here's my python notebook you can play with

Google Colaboratory

and my observable notebook for making graphs!

https://observablehq.com/@wisehackermonkey/all-programming-languages-are-just-c-lang

The GRAPHS! 

because who doesnt love graphs!

Demo γ€½οΈπŸŽ‰

static image of graph incase observablehq goes down

What does this graph mean?

answer: what is the most used languages to build other programming languages. based on a dataset of 9 langs.

Notes: see how the assembly is first, this is just because of alphabetical

I also like how it reads C/C++ 😎

More graphs!

The graph shows the number of lines of code sorted by programming language.

Analysis

hmm. first java, then c/c++. My guess is that java JVM has a lot of code

Yeah, java isnt used by other langs. used by any of the other programs langs

I was right

Takeaways...

1) graphs are cool

2) graphs are cool

3) C/C++ is a popular for building programming languages with.

4) graphs are cool πŸ˜‹

Thanks for reading πŸ˜€

Author

by oran collins
github.com/wisehackermonkey

I use a tracker that is pravicy focused so if you block its cool, im big on blocking stuff on my own machine. im doing it to see if anyone is actualy reading my blog posts...:)