Yazıyı ikinci kez yazıyorum :/
Birkaç gündür ne dile ne de foruma pek bakabildim silinen verilerimi kurtarmakla meşguldum ve başardım tekrar :) Artık her ay data kaybı yaşamazsam içim rahat etmiyor :)
Bugün gelen maille de D dilinin yeni sürümü çıktığını öğrendim.
http://forum.dlang.org/thread/530B06AB.60501@yahoo.com
İlk dikkatimi çeken yenilik package.d oldu. Bu özellik için geç bile kaldılar önceden modül için birde d.d dosyası oluşturup import modül.d; diyorduk artık direk import modül; diyebileceğiz :)
Bir başka ÇOK önemli gördüğüm şey ise template fonksiyonların normal fonksiyonlara karşı overload olması önceden bunu yapamıyorduk görünüşe göre artık yapabiliyoruz.
auto foo(int n) { return 1; }
auto foo(T)(T t) { return 2; }
Hoş bir özellik de strip ile beraber gelmiş. Artık sadece stringleri değil her türlü diziyi strip edip boş ifadelerden arındırabiliriz.
Introduced generic strip/stripLeft/stripRight functions:
The new generic strip functions allow you to not only strip strings but also any other Input range (stripLeft) or Bidirectional range (strip/stripRight), for example:
import std.algorithm;
void main()
{
// strip whitespace.
assert(" foobar ".strip!(a => a == ' ')() == "foobar");
// an audio waveform.
float[] data = [0.0, 0.0, 0.1, 0.5, 0.2];
// strip leading silence in the waveform.
assert(data.strip!(a => a < 0.1)().length == 3);
}
Ve daha önce sorduğum thisExePath olayı sanırım artık tam bir resmilik alıyor
import std.file;
import std.stdio;
void main(string[] args)
{
// Prints the full path of the current running executable.
// Note: this may, or may not be the same as args[0]. The content
// of args[0] is dependent of how the application was invoked, thisExePath()
// is not. It's also possible to access thisExePath() from other parts of the
// code than main.
writeln(thisExePath());
}
Ve anlayamadığım birkaç regex özelliği var. Yeni sürümle baya yenilik var sadece benim için çok önemli olanları yazdım buraya :) Ve CTFE çok lanet bir özellik olarak D ye girdi çok bug ı vardı. Özellikle rhs de hız için optimize yapıyordum compile time bir baktım artık mümkün değil CTFE sayesinde.
Zekeriya
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]