02.07.2022

Выпуск среды разработки PascalABC.NET 3.8.3

Доступен выпуск системы программирования PascalABC.NET 3.8.3, предлагающей редакцию языка программирования Паскаль с поддержкой генерации кода для платформы .NET, возможностью использования библиотек .NET и дополнительными возможностями, такими как обобщённые классы, интерфейсы, перегрузка операций, λ-выражения, исключения, сборка мусора, методы расширения, безымянные классы и автоклассы. Проект главным образом ориентирован на применение в сфере образования и научных исследований. Пакет также включает среду разработки с подсказками по коду, автоформатированием, отладчиком, дизайнером форм и образцами кода для начинающих. Код проекта распространяется под лицензией LGPLv3. Возможна сборка в Linux (на базе Mono) и Windows.

Изменения в новом выпуске:

  • Цикл «for» теперь допускает указание шага step, если не используется модификатор downto. Нулевой шаг вызывает исключение ZeroStepException.
     begin for var i:=1 to 6 step 2 do Print(i); Println; for var c:='f' to 'a' step -2 do Print(c); end.
    
  • В цикле foreach разрешено использовать индекс:
     begin foreach var x in Arr(1,2,3) index i do Println(i,x); end.
    
  • В библиотечной функции TypeName реализован стандартный поток ErrOutput для вывода шибок:
     begin var o: (integer,integer)->() := (x,y)->Print(1); Println(TypeName(o)); var o1 := new List<integer>[2,3]; Println(TypeName(o1)); end.
    
  • Устранена ошибка при перенаправлении ввода, не позволявшая решать решать интерактивные олимпиадные задачи.

Источник.