PascalABC.NET 3.8 geliştirme ortamının yayımlanması

.NET platformu için kod oluşturma desteği, .NET kitaplıklarını kullanma yeteneği ve genel sınıflar, arayüzler, operatör gibi ek özellikler içeren Pascal programlama dilinin bir sürümünü sunan PascalABC.NET 3.8 programlama sisteminin sürümü mevcuttur. aşırı yükleme, λ ifadeleri, istisnalar, çöp toplama, genişletme yöntemleri, adsız sınıflar ve otomatik sınıflar. Proje öncelikle eğitim ve araştırma alanındaki uygulamalara odaklanıyor. Pakette ayrıca kod ipuçları, otomatik biçimlendirme, hata ayıklayıcı, form tasarımcısı ve yeni başlayanlar için kod örnekleri içeren bir geliştirme ortamı da bulunur. Proje kodu LGPLv3 lisansı altında dağıtılmaktadır. Linux (Mono tabanlı) ve Windows üzerine kurulabilir.

Yeni sürümdeki değişiklikler:

  • Çok boyutlu dizileri dilimlemek için destek eklendi begin var m := MatrByRow(||1,2,3,4|,|5,6,7,8|,|9,10,11,12||); Println(m[:,:]); // [[1,2,3,4],[5,6,7,8],[9,10,11,12]] Println(m[::1,::1]); // [[1,2,3,4],[5,6,7,8],[9,10,11,12]] Println(m[1:3,1:4]); // [[6,7,8],[10,11,12]] Println(m[::2,::3]); // [[1,4],[9,12]] Println(m[::-2,::-1]); // [[12,11,10,9],[4,3,2,1]] Println(m[^2::-1,^2::-1]); // [[7,6,5],[3,2,1]] Println(m[:^1,:^1]); // [[1,2,3],[5,6,7]] Println(m[1,:]); // [5,6,7,8] Println(m[^1,:]); // [9,10,11,12] Println(m[:,^1]); // [4,8,12] sonu.
  • Demetler veya diziler olan paket açma parametrelerine sahip lambda ifadeleri eklendi. Artık tuple elemanlarını doğrudan lambda parametrelerinde adlandırmak mümkün. Bir t demet parametresini x ve y değişkenlerine açmak için \\(x,y) gösterimini kullanın. Bu, iki parametreyi temsil eden (x,y) gösteriminin aksine, tek bir parametredir: begin var s := Seq(('Umnova',16),('Ivanov',23), ('Popova',17) ),('Kozlov', 24)); Println('Yetişkinler:'); s. Where(\\(isim, yaş) -> yaş >= 18).Println; Println('Soyadına göre sırala:'); s.OrderBy(\\(isim,yaş) -> isim).Println; son.
  • Daha önce gramer düzeyinde yasak olan “a'nın T dizisi olarak” yapısına izin verilmektedir. begin var ob: nesne := yeni tamsayı[2,3]; var a := ob tamsayı dizisi [,] olarak; son.

Kaynak: opennet.ru

Yorum ekle