Языки Fore и Fore.NET являются простыми, объектно-ориентированными и типобезопасными языками, специализированными на работу с репозиторием и объектами «Форсайт. Аналитическая платформа». Также языки предоставляют возможности работы с файловой и операционной системами, использовать функции на языках программирования Python и Java.
Основные нововведения в языке Fore.NET по сравнению с Fore связаны с необходимостью соответствовать требованиям и функциональности предоставляемой платформой .NET Framework:
Расширенный набор стандартных типов: Byte, Short, Long + их беззнаковые варианты;
Использование обобщенных типов (generics);
Частичное определение типов (partial types);
Метаданные, связанные с кодом, и атрибуты;
Модифицированный механизм виртуальных методов и их переопределения;
Групповые делегаты;
Оператор Using;
Опциональное указание имени в конце определения синтаксической конструкции (класса, метода, свойства);
Изменен принцип работы статических полей. В отличие от Fore статические поля доступны в рамках домена приложения и не зависят от количества соединений с репозиторием.
В целом язык Fore.NET является обратно совместимым по синтаксису и семантике с языком Fore. В языке Fore.NET не поддерживаются следующие языковые конструкции языка Fore:
Оператор ComImport;
Оператор With;
Оператор Dispose (есть стандартный вызов System.Runtime.InteropServices.Marshal.ReleaseComObject);
Матричные операции;
Вложенные процедуры и функции;
Формальные параметры при вызове процедур и функций, значения по умолчанию для параметров;
Модификатор Default для свойств классов;
Синтаксис описаний свойств в определениях интерфейсов.
При их наличии в исходных текстах выдается ошибка компиляции.