Girinti her iki sözdizimi stilinde nerede olduğunuzu söyler. Bir VB programı veya bir C # programını tek bir satıra yazarsanız, iç içe geçmiş sözdiziminin neresinde olduğunuzu söyleyemezsiniz. Makine, blok bitiş ifadelerini veya kıvırcık parantezleri ayrıştırır, ancak insanların girintiye ihtiyacı vardır.
Blok bitiş ifadeleri, programlama çok daha az etkileşimli ve görsel olduğunda delikli kartlar ve kağıt bant çağından gelir. Ya da, gerçekten, hiç etkileşimli değil. Programlara girmek zordu ve bu yüzden programcıların sözdizimi analizi ve hata kurtarma konusunda çok akıllı olmaları için derleyicilere ihtiyaçları vardı.
Geçtiğimiz dönemde, düzenleme-derleme-çalıştırma döngüsü kart deliciyle delikli kartlar hazırlamayı ve sonra da bir katilin delikli kartları alıp makineye göndermesini sağlayan bir iş gönderme penceresine dizilmiş olabilir. Daha sonra programcı çıktıyı (kağıda basılmış) başka bir pencereden toplar. Programda hatalar olsaydı, çıktı yalnızca derleyici tanılamasından oluşur. Geri dönüş süreleri uzun olduğunda, tanılama kalitesini artırmaya yardımcı olursa end if
, sadece yerine yazmanın ek maliyeti )
haklıdır, çünkü programcı, zaman kaybını azaltmak için tek bir yinelemede mümkün olduğunca çok hatayı düzeltmelidir. iş gönderme penceresinden tekrarlar.
Kapanmış kıvırcık küme ayracı eksik olduğunda, hangi açık küme ayrağının kapalı olmayan küme ayracı olduğunu söylemek zor. (Derleyici, eğitimli bir tahmin yapmak için girintiyi ayrıştırmak zorunda kalabilir.) Bir işlevin içindeki kapanış ayracı silerseniz, dosyanın geri kalanının tamamı bu işlevin bir parçası gibi görünür, bu da yardımcı olmayan hata iletilerinin telaşlanmasına neden olur. Bir end function
sözdiziminiz varsa , derleyici hatalı işlevin nerede bittiği sonucunu çıkarabilir, sonraki işlevleri düzgün bir şekilde çözümleyebilir ve ayrıştırabilir ve varsa anlamlı olan ek tanılamalar sağlayabilir.
Kodunuzu otomatik olarak girintilendiren ve renklendiren koda duyarlı metin düzenleyicide çalışırken, altmış veya daha fazla satır görebileceğiniz yüksek çözünürlüklü bir ekranda, bu tür beceriksiz diller için argümanlar artık geçerli değildir. Programları o kadar hızlı bir şekilde düzenleyebilir ve yeniden oluşturabilirsiniz, böylece her seferinde tek bir hatayla başa çıkabilirsiniz. Ayrıca, programın büyük bölümlerini aynı anda ekranda görüp uygun girintiyi koruyarak, bu tür yuvalama hatalarının oluşumunu ilk etapta azaltabilirsiniz. Ve iyi programlama metin editörü yazarken bazı sözdizimi hatalarını bile işaretleyecektir. Dahası, bir programın bloklarını sözdizimine göre çökertecek ve yapısının "taslağa benzeyen" bir görünümünü veren katlama editörleri var.
Lisp parantezleri en başından beri kullandı ve belki de tesadüfen değil, Lisp korsanları programlamayı küçük parçalarda (ifadeler) kabul eden sistemler oluşturarak etkileşimli bir deneyim olarak öncülük etti.
Aslında, Python dilinin gösterdiği gibi, bitiş sembollerine hiç ihtiyacınız yoktur. İdentation sadece edebilirsiniz olmak yapısı. İnsanlar, makinenin bitiş sembollerine veya ifadelerine dayandığı dillerde bile kod yapısını incelemek için zaten girintiyi kullanıyorlar.