Ok timovjl,
I could say that also the software follows the general rules of physics: nothing could be created and nothing could be destroyed. This means that all the functions and pecularities of the so called visual languages don't comes from nothing. When you use an OOP language (object oriented) it's easy to write 'new' to create an object, but somewhere there should be the code that instructs the system how to create it. This means that much more 'friendly' is the tool much more precompiled libraries it needs. Libraries that becomes even more huge as more 'simple' and 'fast' becomes the programming because someone had to write all the code that you are unaware to call and use.
This could be OK if you can use just what you need, but unfortunately to keep it running you are forced to keep the whole library code. This always lead to huge dimensions of the code also for a simple hello world program.
C language has nothing, you could write a program with just the routines you need. Also the I/O is optional, if you don't need it you could also avoid the use of the standard library (stdlib).
The included example is a simple hello world with nothing included, executable size 2k without any adjustement, simply out from the compiler/linker.