Çok basit...
Biz dile ne kadar çok özellik:
- parantez ve noktalama işaretleri kullanmadan bir döngü kullanımı: '''while' i++ <= '10' {print(i) print('"değişken"')}''
- üyeleri kurucu işlevde tanıtarak sınıf kurulması: '''Class' Foo { Fn this() { 'self'.index = '0' 'self'.data = '""' } }''
eklersek, bunların yorumlanması o kadar çok süre alır. Başlangıçta yapılacak bir süzgeç değeri (configuration parameter) ile, örneğin esnek yazım şeklinden (speedMode) alışılmış yazım şekline (classicMode) geçiş yapabiliriz. Bu kısa ve örnekli açıklama da yeterli olmadıysa senin örneklerin (https://github.com/Rhodeus/Script2.0/blob/master/test/loop.rhs) üzerinden gidelim...:)
Orada döngülerin esnek kullanımlarını işlerken şu başlıklara ayırmışsın:
- C style for loop
- non parentheses for loop
- non-brace for loop
Bütün bunlar gerçekten güzel özellikler, seni kutlarım. Ancak, "ne kadar ekmek o kadar köfte" hesabı, her eklenen özellik sanırım daha geç yorumlamaya sebep olacak. Sen daha iyi bilirsin, benim hiç "parse" deneyimim yok; acaba elinde 2 parse sınıfı (C ve RhS style) olsa ve her birini farklı derleyip test etsen hız farkı olacak mıdır, dener misin?
Yani bir tarafta senin dile özgü pratik geliştirmelerin olurken (C style'ı anlamayacak), diğerinde sadece C kodlarını algılayacak şekilde yorum yapan 2 denememiz olacak. Belki aralarında hiç hız farkı olmayacak. Ancak bunların her ikisinide dile kattığımızda ikisinin toplamı olmasa da biraz daha geç yorumlama yapacağını zannediyorum. Eğer işin aslı böyleyse, yorumlama öncesi basit bir komut ile bunun "ön seçimli" olması sağlanabilir. Tabi nihai RhS sürümünde, birden fazla parse sınıfı mevcut olmalı.
Başarılar...
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]