Ne halt edersem, 0.02 dolarımı alırım.
Birçok durumda, "sistemler" dilleri ve üst seviye diller arasında gerçek veya algılanan bir fark vardır. "Üst düzey" dillerin çoğunu görmezden geleceğim, çünkü hiç kimse (en azından pek değil) birçok görev için Python, Ruby, vb. Dillerin çalışmasının daha kolay olduğunu iddia edemez.
C bir sistem dili olacak şekilde tasarlandı, yani Unix işletim sisteminin yazıldığı dil olarak tasarlandı. Bu nedenle basit, güçlü ve hızlı olacak şekilde tasarlandı. Basit bir dil, sistem dışı programcıların sıklıkla tehlikeli gördüğü yollarla güç kazanır: işaretçiler, manuel bellek yönetimi vb. Daha önce de belirtildiği gibi, C oldukça basittir. K&R, programlama rafımdaki en küçük kitap (O'Reilly Pocket Referanslarını saymıyor) ve Ruby Cep Referansımdan yalnızca marjinal olarak "daha büyük". C oldukça güçlü. Donanımla konuşmanız gerekiyorsa, manuel olarak kontrol edin ve hafızayla vb. Değiştirin. C kabiliyetine sahiptir.
Bununla birlikte, bir programcının bakış açısından, C o kadar basit değildir. Hız ve güç, manüel bellek yönetimi ve dilde yerleşik pek fazla OOP desteği pahasına değil. C ++ (en sevdiğim dil değil) bir programcının bakış açısından çok daha basit, derleyici açısından daha az basit. Objective-C (belki de en sevdiğim dil) aynı tradeofere sahip, dili basit tutmak yönünde hafifçe eğilmek (çöp toplama, örneğin Objective-C'nin yenisidir). Ancak, bilgisayar dünyasının çoğumuzun C dilinde yazıldığını bildiğinden, daha yeni, daha karmaşık ama "daha kolay" dillerin yaygın olarak benimsenmesini sağlamak zordur.
Bazı durumlarda, özellikle mevcut "standart", C kadar "yeterince iyi" olduğunda, sadece "daha iyi" bir şey (C ++, Objective-C, D vb.) İçin çekiş kazanması için çok fazla teşvik yoktur. "daha iyi" bir şey yaratmak için bile yeterli teşviktir.