Kendi Programlama Dilini Oluşturmak

Yorumlayıcı sizin yazdığınız kaynak kodu alır ve lexer kısmında (yani söz dizilimi) kısmında işleme sokar, lexer kuralları oluşturur ve sizin oluşturduğunuz kurallara göre kodu parçalara böler, eğer kurallar aşılırsa hata verdirilir.

Herkese merhaba,

Biliyorum ki, programlama dili öğrenen bir çok kişi, bir programlama dili nasıl yapılır, "ben kendi programlama dilimi nasıl yaparım" diye merak ediyor. Gerçekten ben de çok merak ediyordum, kendi programlama dilimi, kod dilimi oluşturmayı çok istiyordum, bu istek ve merak üzerine araştırmaya karar verdim, ancak Türkçe kaynak çok az vardı. Doğrusunu söylemek gerekirse, Türkçe kaynaklar pek tatmin edici değildi. Çünkü gerçekten çok az kaynak vardı bu konu ile ilgili.

Sonrasında oradan buradan, İngilizce kaynaklardan bir programlama dili nasıl yapılır, çok zor da olsa, çok şükür öğrenebildim ve kendi kod dilimi oluşturdum (Comfy Programlama dili), bu bana gerçekten çok zevk veriyordu.

Türkçe kaynak çok az olduğu için böyle bir yazı dizisi hazırlamayı düşündüm. Yazıları bir kaç kısma bölerek sizlere bir programlama dilinin nasıl yapıldığını anlatacağım ve hep birlikte örnek bir programlama dili geliştireceğiz.

İlk önce yapmanız gereken şey, yorumlayıcının veya derleyicinin yapısını, çalışma mantığını çözebilmeniz. Zaten bunu bildikten sonra gerisi kolay.

Programlama dili aşağı yukarı aynı insan diline benzer. Onun da kuralları vardır, grammer falan gibi. Siz yanlış kelime kullandığınızda karşınızdaki insan sizi anlamayabilir, tıpkı programlamada da yanlış kod yazdığınızda hata verir; yani dilin kurallarını aştığınız anlamına gelir.

İşte bu kuralları ve kodları oluşturan yorumlayıcı veya derleyicilerdir.
Yorumlayıcı bir kaç kısımdan oluşur. Derleyici ile yorumlayıcı arasında pek çok fark yoktur. Derleyici kod üretir yorumlayıcı üretmez.
Kaynak Kod – Lexer – Parser



Yorumlayıcı sizin yazdığınız kaynak kodu alır ve Lexer kısmında (yani söz dizilimi) kısmında işleme sokar, lexer kuralları oluşturur ve sizin oluşturduğunuz kurallara göre kodu parçalara böler, eğer kurallar aşılırsa hata verdirilir.

Lexer'de işlem bittikten sonra oluşturulan token'ler parser kısmında yeniden işleme sokulur ve parser ile kodlar ağaç yapısı şeklinde gruplara bölünür.

Sonraki yazılarda bu kavramları uygulamalı şekilde daha iyi öğreneceksiniz. Bunlar sadece kısa bilgilerdir.

Diğer derslerde görüşmek üzere, beni takip devam edin, okuduğunuz için teşekkür ederim.

  • Etiketler;
Elizbar Yusuf
Sanalkurs yazarlarındandır.
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Merhaba sizin comfy programlama dili ile ilgili bana ders verebilirmisiniz

Yukarı Git