Yazılımdan hiç anlamayan biri olarak dikkatlice tüm cevapları okudum ama net bir sonuca ulaşamadım

Şimdi arkadaşın dediği gibi python dahil bir çok dil bu yöntem ile mi yazılmış yoksa diğer arkadaşların iddia ettiği gibi ekmekten ekmek yapmak mı :P
Ekmekten ekmek yapmak. Arkadaş PHP içinde PHP yazmış oldu. Normalde bir programlama dili oluşturmak bir kenara, CSS gibi syntax’i oldukça basit kurallara sahip olan bir dili bile AST’ye çevirmek oldukça zorken, bir programlama dili oluşturmak ciddi anlamda emek gerektirir. Önce kaynak dilde compiler veya assembler yazmanız gerekiyor, lexer, parser, transformer ve traverser gibi çeşitli parçaları oluyor bu compiler ve assemblerların.
Evet, arkadaşın dediği doğru. Birçok programlama dili başka bir dilde yazılmıştır. Örnek olarak Go’yu vereyim. Sistem şöyle çalışıyor:
1. Önce C dilinde kaynak bir compiler yazılıyor, bu compiler’ın çok geniş olmasına gerek yok, genelde büyük diller için birkaç yüz bin satır ile birkaç on bin satır arasında değiştiğini biliyorum.
2. Daha sonra yeni oluşturacağımız Go diliyle bir compiler daha yazılıyor, kaynak compiler’a bu yeni yazdığımız (Go) compiler’ı compile ettiriyoruz.
3. Dilin geri kalanını Go ile yazıp, Go compiler’ına compile ettiriyoruz.
Bu işleme de bootstrapping deniyor ve birçok dil bunu kullanıyor: Typescript, Java, C… Örnekler çoğaltılabilir. Merak edenler için burada bu yöntemi kullanan dillere örnekler verilip aşama aşama daha iyi bir şekilde anlatılmış:
https://en.m.wikipedia.org/wiki/Boot...ing_(compilers)
Yani bir programlama dili elli satırda yapılmıyor. Keşke öyle olsaydı
Dipnot olarak, gerçek bir compiler’ın nasıl yapılacağını merak edenler butayı inceleyebilir:
https://en.m.wikipedia.org/wiki/Compiler
Kullandığınız proglama dili için burada da bir kaynak bulma ihtimaliniz yüksek:
https://github.com/codecrafters-io/b...mming-language