Intent Based Programming ve Intent Specific Language (ISL)

Eskiden programci olarak nasil soruna cevap arardim. Bu durum tamamen degismis durumda. Artik ne sorusunun pesindeyim. Programlama tarihi de LLM’ler ile birlikte nasil sorusundan ne sorusuna dogru evrilen bir soyutlama tarihine dönüsüyor.

Günümüzde programlama paradigmalarinin evrimine canli, canli sahit oluyoruz:

Imperatif -> Deklaratif -> Niyet Tabanli (intent based) Programlama

Niyet tabanli programlama ile ne kast ettigimi aciklayacagim.

Ben Java dilinde cok uzun bir dönem imperatif kod yazdim. Java 8 ile gelen Stream API ilk deklaratif kod yazma imkani sagladi. Java 8 öncesi for, if, add yapisi Java 8 ile filter, map, collect e döndü. For döngüsü yerine filter yapisini kullanarak ne yapilmasi gerektigini tayin ediyorum, ama nasil yapilmasi gerektigine JVM kendisi karar veriyor. Stream API ile gelen en büyük degisiklik bu oldu.

Yapay zeka ile bu calisma tarzi yine bir üst soyutluk seviyesine tasinmis oldu. Artik promptlar ile “x modülünü yap, sunu desteklesin, bunu yapabilsin” yine ne yapilmasini gerektigini tayin ediyorum, ama artik sunu filtrele, su algoritmayi kullan bile demiyorum. Sadece niyet (intent) belirtiyorum. Bu da aslinda yeni bir paradigmanin dogusu: Intent Programming. Belki buna semantik programlama bile denebilir.

Prompt benim icin bir DSL (domain specific language). DSL ile bir problem tanimlanir. Ayni sey prompt icin de gecerli. Prompt dogal dil ile yazilmis bir DSL.

Bir üst soyutluk seviyesine saracak olursak, prompt aslinda DSL degil, ISL (Intent Specific Language), cünkü DSL’de oldugu gibi syntax artik önemli degil, daha cok semantik icerik önemli.

Eskiden derleyiciler Java -> Bytecode -> Makina kodu seklinde calisiyorlardi. Simdi ise niyet -> LLM -> Java, yani LLM bir üst seviye derleyici gibi davraniyor. Kisaca LLM’lere prompt compiler diyebiliriz.

Eskiden yazilimci nasil yapildigini bilen kisi idi. Yeni yazilimci ise problemi en dogru sekilde modelleyen kisi olacak. Burada yine domain driven design öne cikiyor, cünkü ne sorusuna cevap verebilmek icin alani cok iyi tanimak lazim.

Ben artik kod yazmiyorum. Sadece niyetimi ifade ediyorum. Kod insan ile makine arasindaki son ortak dil olmaktan cikip, yapay zekanin insanlar adina ürettigi bir ara temsile dönüsüyor. Simdiye kadar gördügümüz tüm deklaratif programlama teknikleri son durak degildi. Onlar bizi prompt programlamaya hazirlamis oldular.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir