Опубликован выпуск проекта OneScript 2.0.0, развивающего независимую от компании 1С кроссплатформенную виртуальную машину и компилятор для выполнения скриптов на языке 1С:Предприятие. Система самодостаточна и позволяет выполнять скрипты на языке 1С без установки платформы 1С:Предприятие и специфичных для неё библиотек. Виртуальную машину OneScript можно использовать как для прямого исполнения сценариев на языке 1С, так и для встраивания поддержки их исполнения в приложения, написанные на других языках. Код проекта написан на языке С# и распространяется под лицензией MPL-2.0. Поддерживается работа в Linux, Windows и macOS.
OneScript поддерживает все возможности языка 1С, включая нестрогую типизацию, условные выражения, циклы, исключения, массивы, регулярные выражения, COM-объекты и встроенные функции для работы с примитивными типами. Стандартная библиотека предоставляет функции для работы с файлами и строками, взаимодействия с системой, обработки JSON и XML, сетевого доступа и использования протокола HTTP, математических вычислений, работы с макетами.
Изначально система рассчитана на разработку консольных приложений на языке 1С, но сообществом развивается библиотека OneScriptForms, позволяющая создавать приложения с графическим интерфейсом. Кроме стандартной библиотеки и OneScriptForms для OneScript доступно около 200 пакетов с дополнительными библиотеками и утилитами. Для упрощения установки и распространения библиотек предлагается пакетный менеджер opm. В новой версии:
Источник: https://www.opennet.ru/opennews/art.shtml?num=64547
OneScript поддерживает все возможности языка 1С, включая нестрогую типизацию, условные выражения, циклы, исключения, массивы, регулярные выражения, COM-объекты и встроенные функции для работы с примитивными типами. Стандартная библиотека предоставляет функции для работы с файлами и строками, взаимодействия с системой, обработки JSON и XML, сетевого доступа и использования протокола HTTP, математических вычислений, работы с макетами.
Изначально система рассчитана на разработку консольных приложений на языке 1С, но сообществом развивается библиотека OneScriptForms, позволяющая создавать приложения с графическим интерфейсом. Кроме стандартной библиотеки и OneScriptForms для OneScript доступно около 200 пакетов с дополнительными библиотеками и утилитами. Для упрощения установки и распространения библиотек предлагается пакетный менеджер opm. В новой версии:
- Осуществлён переход на унифицированную платформу .NET (объединяет .NET Framework, .NET Core и Mono), позволивший обойтись без использования Mono в Linux и macOS. Из-за замены базовой платформы потеряна бинарная совместимость с существующими внешними компонентами (dll) и требуется перекомпиляция компоненов под новую версию .NET (как минимум, под слой совместимости netstandard 2.0). Помимо выполнение кода в стековой виртуальной машине добавлена поддержка native-компиляции. Реализовн строго-типизированный статический компилятор для высоконагруженных участков кода, позволяющий компилировать язык 1С напрямую в коды машины .NET, а затем в машинный код, демонстрирующий производительность на уровне чистого C#. Для компиляции модулей новым компилятором и выполнения новой средой исполнения добавлена директива #native. Подобный код должен быть строго типизированным, поэтому не все привычные конструкции языка 1С работают (например, не всегда можно записывать в одну и ту же переменную значения разных типов). Реализована возможность создания самодостаточных сборок, не требующих установки .NET на целевую систему (компоненты .NET встраиваются в поставку). Проведён глубокий рефакторинг ядра 1Script и добавлен новый парсер языка, реализованный в виде отдельной библиотеки OneScript.Language и позволяющий создавать независимые инструменты анализа кода, обфускаторы и трансляторы. Повышена производительность 1Script. Упрощена интеграция среды исполнения в сторонние приложения. Добавлен встроенный http-сервер на базе Kestrel.
Источник: https://www.opennet.ru/opennews/art.shtml?num=64547