Forum: Projeler Genel RSS
N Dilinden Merhaba Dünya
Programlama Dili
Sayfa:  1  2  sonraki 
Avatar
huseyin #1
Üye Haz 2012 tarihinden beri · 355 mesaj · Konum: Isparta
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: N Dilinden Merhaba Dünya
Merhaba arkadaşlar uzun süre olmasada üzerinde çalıştığım derlemeli programlama dilim olan N yi sonunda d ye geçirmeye başladım yepyeni bir söz dizimi ve %100 türkçe ile rakiplerini zorlayabilir belki :D

Yazdığım Kod :

[Resim: http://p1305.hizliresim.com/19/5/ms7dn.png]

Çıktısı:

[Resim: http://j1305.hizliresim.com/19/5/ms7f5.png]
Huseyin
Avatar
zekeriyadurmus #2
Kullanıcı başlığı: Talha Zekeriya Durmuş
Üye Eki 2012 tarihinden beri · 701 mesaj · Konum: Samsun/Türkiye
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Tebrikler :) Kaynak kod paylaşmayı ne zaman düşünüyorsun?

Zekeriya
Bilgi meraktan gelir...
Avatar
huseyin #3
Üye Haz 2012 tarihinden beri · 355 mesaj · Konum: Isparta
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Teşekkürler
Şuanki kaynak kodlar gülünecek kadar kötü bir el atarsam haziranda başlarım hesaplarıma göre :D
Huseyin
Avatar
Salih Dinçer #4
Üye Ock 2012 tarihinden beri · 1880 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Tebrikler, şimdiden kolay gelsin...

Bu arada neden N, HüseyiN'den dolayı mı? N harfi ile bitiyor ya o bakımdan...:)

Sanırım Türkçe karakteri destekliyor; bu çok güzel. Belki Türkçenin ilk harfi T olmasından dolayı T dili hoş olabilir; sadece bir fikir. Bunun dışında döngü örnekleri var mı? Ama gördüğüm kadarıyla noktalama işareti az olan ve Türkçe konuşur gibi yönergeleri (command) anlayan bir dil.

Başarılar...
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
acehreli (Moderatör) #5
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4391 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Tebrikleeer! :)

Ali
Avatar
huseyin #6
Üye Haz 2012 tarihinden beri · 355 mesaj · Konum: Isparta
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Bilgisayara oturmaya çok fırsat bulamıyorum bundan biraz uzun sürecek bir proje umarım başarırım.

Bu arada neden N, HüseyiN'den dolayı mı? N harfi ile bitiyor ya o bakımdan...:)
Sanırım öyle ama başka anlamları da var.

Belki Türkçenin ilk harfi T olmasından dolayı T dili hoş olabilir;
Evet ama birisi bunu kullanmıştı bir interpreter da ondan mümkün değil :)

Ama gördüğüm kadarıyla noktalama işareti az olan ve Türkçe konuşur gibi yönergeleri (command) anlayan bir dil.

Amacım bu zaten programlamayı kolaylaştırmak mesela

Bunun dışında döngü örnekleri var mı?
Çok yakında gelecek genel bir düzenlemeye girdim lexer üzerinde onun bitmesi gerekli biraz bekleticem yani :(

Başarılar...
Sizin orjinal fikirleriniz olmasa asla yapamazdım teşekkür ederim :)

Tebrikleeer! :)
Teşekkür ederim siz olmasanız yapamazdım kitabınız olmasa asla
Huseyin
Avatar
huseyin #7
Üye Haz 2012 tarihinden beri · 355 mesaj · Konum: Isparta
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
2 ay içerisinde ciddi gelişmeler oldu ve Talha ile konuşmalarım neticesinde bu işi ciddiye alıp ve genel bir programlama dili söz dizimi olan C söz diziminde kişileştirmeler uygulayarak bu projeyi yapma kararı aldım. Gelişmeleri burada paylaşacağım eğer bir öneriniz olursa benimle paylaşabilirsiniz bu dilin gelişimi yönünde bir katkı sağlamak demektir. :)

Proje için yepyeni bir sayfa açıp tamamen kendime has lexerimi kodladım ardından parseri yapıyorum. Şuan itibari ile Int, Byte ve Word değişkenlerimiz mevcuttur ekleme olarak string vb. düşünüyorum.

Blokların içindeki değişkenler dışarıdan çağırılamazlar. Her programlama dilindeki gibi locallik mevzusu.

Örnek bir kod ile sözlerimi bitirmek istiyorum :)

get sys
func root:Int()
{
     var HelloWorld:Str="Merhaba Dünya"
     write(HelloWorld)
}
Huseyin
acehreli (Moderatör) #8
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4391 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Çok güzel! :)

Ali
Avatar
huseyin #9
Üye Haz 2012 tarihinden beri · 355 mesaj · Konum: Isparta
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Teşekkürler ancak algoritmaya ihtiyacım vardı bunuda Talha sayesinde halledeceğim :)
Huseyin
agora #10
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Hocam Lexer ve parser konusunda turkce dokumana sahip misiniz?

Amacim dil yazmak degil. Ama lexer ve parser kullanarak

X.AGORA, Y.AGORA, C.AGOR

vs. gibi (uzantilar ornektir) dosyalari islemek istiyorum

MySQL'in fiziksel data yollarini buldum ben. Onlar gibi bise dusunuyorum :)

Data'lari saklayacagim, bunlar gramer'e gore acabilecegim bi sistem dusunuyorum.

Tabii kafamin almadigi sorular port islemleri vs. ama onlar sonra da ogrenilebilir.

Ornegin X.AGORA dosyasındakı içerik

||| VERITABANI: AGORA~ |||

Y.AGORA dosyasi

||-> TABLO: BLOG_TABLOSU~ |||

C.AGOR;

||~-> VERILER: DB1.AGD, DB2.AGD ~~ |||

vs. gibi veritabani dosyalarini islemesi lazim. Sanirim mantik acisindan bu sekilde calisabilir

Lexical Syntax -> & Analyzer Semantic Analyzer (Parser) [ÖN YÜZ]

Intermediate Code Generator -> Code Optimizer Generator [ORTA YÜZ]

Target Code [ARKA YÜZ]

şeklinde mi çalışıyorsunuz acaba?
Avatar
huseyin #11
Üye Haz 2012 tarihinden beri · 355 mesaj · Konum: Isparta
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Hayır hocam İngilizce kaynaklardan yararlanıyoruz malesef Türkçe kaynak sıkıntısı var. :(
Lexer, parser uzmanımız @zekeriyadurmus olduğu için :P  o bana shunting yard algoritmasını önerdi ancak senin sanırım algoritmaya ihtiyacın yok :)

Dediğin işi daha önceden yapmıştık tavsiyem dkv nin kodlarına bakman. Ben de ufak tefek birşey denemiştim D ye ilk başladığım zamanlarda eğer dediğini tutuyorsa kullanırsın

https://github.com/huseyin325325/vtd

Vtd2 ye bakmanı tavsiye ederim. O zaman çok basit düşündüğüm için kaliteli bir kod bulamazsın belki ama işini görmesini umarım.
Huseyin
acehreli (Moderatör) #12
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4391 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Belki regex'le bile halledilir:

  http://dlang.org/phobos/std_regex.html

Ali
Avatar
huseyin #13
Üye Haz 2012 tarihinden beri · 355 mesaj · Konum: Isparta
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Evet o zamanlar regex bilmiyordum :D keşke onu kullansaymışım
Huseyin
Avatar
Salih Dinçer #14
Üye Ock 2012 tarihinden beri · 1880 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #7
Eline sağlık, ilerleteceğinden şüphem yok...

Peki verdiğin örnekler itibariyle şu satırlar çalışıyor mu:
     var HelloWorld:Str="Merhaba Dünya"
     var MerhabaDunya:Str=HelloWorld
     HelloWorld[8] = 'W'
     HelloWorld[9] = 'o'
     HelloWorld[10] = 'r'
     HelloWorld[11] = 'l'
     HelloWorld[12] = 'd'
     write(HelloWorld, " / ", MerhabaDunya) // printout->Merhaba World / Merhaba Dünya 
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
huseyin #15
Üye Haz 2012 tarihinden beri · 355 mesaj · Konum: Isparta
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Diziler ve Stringler şuanda aktif değiller shunting yard algoritmasını kullanmaya başladım :) Gayet güzel bir algoritma ileride duruma göre değişiklikler yapılabilir.
Huseyin
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Sayfa:  1  2  sonraki 
Forum: Projeler Genel RSS
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-04-30, 11:45:33 (UTC -07:00)