Wydanie środowiska programistycznego PascalABC.NET 3.8

Dostępna jest wersja systemu programowania PascalABC.NET 3.8 oferująca edycję języka programowania Pascal z obsługą generowania kodu dla platformy .NET, możliwością wykorzystania bibliotek .NET oraz dodatkowymi funkcjonalnościami takimi jak klasy generyczne, interfejsy , przeciążanie operatorów, wyrażenia λ, wyjątki, wyrzucanie elementów bezużytecznych, metody rozszerzające, klasy bezimienne i autoklasy. Projekt koncentruje się przede wszystkim na zastosowaniach w edukacji i badaniach. Pakiet zawiera także środowisko programistyczne ze wskazówkami do kodu, automatycznym formatowaniem, debugerem, projektantem formularzy i przykładami kodu dla początkujących. Kod projektu jest rozpowszechniany na licencji LGPLv3. Można go zbudować na systemie Linux (opartym na mono) i Windows.

Zmiany w nowej wersji:

  • Dodano obsługę dzielenia tablic wielowymiarowych 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] koniec.
  • Dodano wyrażenia lambda z parametrami rozpakowywania, które są krotkami lub sekwencjami. Można teraz nazywać elementy krotek bezpośrednio w parametrach lambda. Aby rozpakować parametr krotki t do zmiennych x i y, użyj notacji \\(x,y). Jest to jeden parametr, w przeciwieństwie do notacji (x,y), która reprezentuje dwa parametry: Begin var s := Seq(('Umnova',16),('Ivanov',23), ('Popova',17 ),('Kozłow', 24)); Println('Dorośli:'); s.Where(\\(imię, wiek) -> wiek >= 18).Drukujln; Println('Sortuj według nazwiska:'); s.OrderBy(\\(imię, wiek) -> imię).Println; koniec.
  • Dozwolona jest konstrukcja „a as array of T”, która była wcześniej zabroniona na poziomie gramatycznym. rozpocząć var ​​ob: obiekt := nowa liczba całkowita[2,3]; var a := ob jako tablica [,] liczby całkowitej; koniec.

Źródło: opennet.ru

Dodaj komentarz