Новый язык программирования EPL Main

Приветствую!

Сегодня я вам хочу продемонстрировать язык программирования EPL Main, его особенности, а также примеры кода на нём. Поехали!

Что такое EPL Main?

EPL Main - Высокоуровневый ассемблер.
Думаете, что ассемблер должен быть сложным? Не обязательно.

EPL Main содержит более высокоуровневые функции, чем в обычных языках ассемблера, но и более низкоуровневые функции, чем в С.
Вы можете написать на EPL Main программы любого уровня: от браузера до своей операционной системы(для чего есть специальные библиотеки).

Почему я должен использовать EPL Main?

  • Скорость: EPL Main зачастую быстрее кода на С;
  • Память: скомпилированный EPL Main код будет весить намного меньше, чем код на C.
  • Большой спектр применения: EPL Main можно применить практически где угодно. Но с тем же С того не скажешь(к примеру, для операционной системы в С придется вызывать кучу функций из языка ассемблера).

Но в целом никто не навязывает вам использование EPL Main, вы можете его использовать - а можете и не использовать. Выбор за вами.

Примеры кода

Мы добрались до самого вкусного!
Давайте посмотрим пример кода с "Hello, world!" под EPL Main:

extern printf ExitProcess sect data string hello "Hello, world!" sect text gfunc main printf hello ExitProcess 0

Пояснения:

- В функциях sect мы помечаем, к какой секции будет принадлежать код. В нашем случае это data(переменные) и text(код).

- В функциях func/gfunc мы объявляем функции. В случае с gfunc - Мы делаем её глобальной(видимой для линковщика).

- В функциях extern мы импортируем функции из других файлов.

- В функции printf мы выводим строку hello.

- В функции ExitProcess мы выходим из нашей программы с нулевым кодом.

Вот и всё!
Вы думали, что это будет гораздо сложнее, не так ли?

Подводим итоги

EPL Main - лишь кисть в руках художника. Возможно, вы захотите использовать другие кисти, но найдутся те художники, которые найдут в этой кисти себя.

EPL Main не предоставляет себя как аналог для существующих языков программирования(C,C++), а лишь облегчает работу программисту с ассемблерным кодом, что позволит вам в кратчайшие сроки написать производительную программу.

Использовать или не использовать - Выбор за вами.

Спасибо за уделенное для чтения время, и до новых встреч!

Discord-сервер - https://discord.gg/cZkEEFR8Uj

471471 открытие
11 комментариев

Комментарий недоступен

Ответить

Поэтому и сказал зачастую.
Лучше тем, что он... Удобнее?)
Не думаю, что в FASM можно:
ah = al
И многое другое.

Ответить

Комментарий недоступен

Ответить

Есть Rust, D, Nim если на то пошло.
Но их "целью" считается замена С, а не языков ассемблера.
Да и скорость будет на порядок ниже.

Ответить

Обычно функции из других файлов (библиотек) импортируют, а тут надо экспортировать? Интересненько.

Ответить

Спасибо за заметку, опечатался.

Ответить

Очередной недояп? Где сурсы? Где документация?

Ответить