Нашри муҳити таҳияи PascalABC.NET 3.8

Нашри системаи барномасозии PascalABC.NET 3.8 дастрас аст, ки нашри забони барномасозии Паскалро бо дастгирии тавлиди код барои платформаи .NET, қобилияти истифодаи китобхонаҳои .NET ва хусусиятҳои иловагӣ ба монанди синфҳои умумӣ, интерфейсҳо пешниҳод мекунад. , изофабори оператор, λ-ифодаҳо, истисноҳо, ҷамъоварии ахлот, усулҳои васеъкунӣ, синфҳои беном ва автоклассҳо. Лоиҳа пеш аз ҳама ба барномаҳо дар соҳаи маориф ва тадқиқот нигаронида шудааст. Маҷмӯа инчунин муҳити рушдро бо маслиҳатҳои код, форматкунии худкор, ислоҳкунанда, тарроҳи форма ва намунаҳои код барои шурӯъкунандагон дар бар мегирад. Рамзи лоиҳа тибқи иҷозатномаи LGPLv3 паҳн карда мешавад. Дар Linux (моно-асоси) ва Windows сохтан мумкин аст.

Тағирот дар версияи нав:

  • Дастгирии иловашуда барои буридани массивҳои бисёрченака оғоз 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] анҷом.
  • Ифодаҳои ламбда бо параметрҳои кушода, ки наворҳо ё пайдарпайҳо мебошанд, илова карда шуданд. Ҳоло мумкин аст, ки унсурҳои наворҳоро мустақиман дар параметрҳои ламбда номбар кунед. Барои кушодани параметри навори t ба тағирёбандаҳои x ва y, аломати \\(x,y)-ро истифода баред. Ин як параметр аст, бар хилофи аломати (x,y), ки ду параметрро ифода мекунад: begin var s := Seq(('Umnova',16),('Ivanov',23), ('Popova',17 ),(' Козлов', 24)); Println('Калонсолон:'); s.Дар куҷо(\\(ном, синну сол) -> синну сол >= 18).Println; Println('Аз рӯи насаб мураттаб кунед:'); s.OrderBy(\\(ном, синну сол) -> ном).Println; Поён.
  • Сохтмони "a ҳамчун массиви Т" иҷозат дода мешавад, ки қаблан дар сатҳи грамматикӣ манъ шуда буд. start var ob: object := new integer[2,3]; var a := ob ҳамчун массиви [,] адади бутун; Поён.

Манбаъ: opennet.ru

Илова Эзоҳ