Skip to content

Latest commit

 

History

History
77 lines (46 loc) · 3.06 KB

readme_ru.md

File metadata and controls

77 lines (46 loc) · 3.06 KB

Язык программирования Lena

Lena logo

Основная информация

Главное

  • Компилируемый
  • Исполняется на SHE (Программно-клонируемый гиперивизрный исполнитель)
  • Синтакс получен из языков: Julia, Rust, языки ассемблера, С/С++
  • Вдохновлён: Julia, Rust, Java

Форматы файлов .e.le.na

  • Формат исполняемых файлов байт-кода .e
  • Формат файлов исходного кода: .le
  • Формат расшифрованного байт-кода (не абстрактный) .na

Объяснение работы языка Lena и исполнителя SHE

SHE - это комплекс программ для запуска приложения в изолированной от операционной системы среде.

Алгоритм работы языка Lena:

  1. Открытие исполнямого файла .exe либо .e который компилируется в lena.

Пример компиляции файлов .e и .exe

lena app.le -o app.e --non-abstract
lena app.le -o app.exe --non-abstract
  • в UNIX подобных системах формат .exe указывать не надо
  1. .exe файл после запуска, загружает свой байт-код в оперативную память. Если файл в формате .e, то он запускается командой:
she app.e
  1. Гипервизорный исполнитель способен создавать локальные, изолированные клоны для исполнения каждого приложения работающего в среде SHE. Это сделано потому что в отличии от типичных ВМ, SHE существует в виде драйвера или модуля ядра ОС. Другими словами, это изолированная "ОС" в основой системе.

  2. Байт-код читается напрямую из ОЗУ, зачастую используя прямой доступ к физической памяти благодаря правам драйвера или модуля ядра ОС.

  3. Клон SHE удаляет себя из памяти и освобождает ресурсы компьютера после завершения работы программы.

  4. Программа закрывается для пользователя.

Сферы применения

  • Системное программирование

  • Разработка игр

  • Работа с данными и вычисления

Привет мир

out("Привет мир!")

Массивы и макросы

array = (5 times 2000)

; или

array2 = {5, 5, 5, 5, 5} ; ... 2000 раз