Nic z toho není pravda, kontrolovat kompozici objektů jde a dokonce se to v částech standardní knihovny využívá. Donovan a Kernighan mají v knize “The Go programming language” příklady.
Nevím, co si představuješ pod "kontrolovat kompozici objektů". Jestli to nějaký řešení má, tak mi ho ukaž na tom příkladu.
1. Píšu jenom consumer(), producer() a main()
2. Neznám obsah B, není dokumentovaný
3. Chci, aby na mě překladač zařval, že dělám nebezpečnou věc - buď že měním něco, co měnit nemám, nebo že používám něco, co se mi pod rukama může změnit. Oboje v C udělat jde.