Интерпретатор KolibriMath

Your KolibriOS applications go here
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Интерпретатор KolibriMath

Post by dozhdikov_igor »

Разработал интерпретатор языка KolibriMath под Колибри. Данный язык на данном этапе рассчитан на расчеты в интерактивной среде.

Image

Последняя версия программы: 1.2.2.
Информация о версиях пишется по ходу темы.
Attachments
KolibriMath_v1.2.2.kex
(62.22 KiB) Downloaded 120 times
KolibriMath_v1.2.1.kex
(61.81 KiB) Downloaded 141 times
KolibriMath_v1.2.0.kex
(59.83 KiB) Downloaded 135 times
KolibriMath_v1.1.3.kex
(45.8 KiB) Downloaded 153 times
Last edited by dozhdikov_igor on Fri Jun 04, 2021 2:13 pm, edited 12 times in total.
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор Express

Post by dozhdikov_igor »

Новая версия KolibriMath 1.0.2.

Исправления:
- при делении на ноль теперь выдает undefined;
- функция pow() теперь работает правильно.

Добавления:
- добавлены сокращенные операции присваивания: "*=", "/=", "-=", "+=";
- добавлена функция модуля abs();
- добавлена справка по языку lang().
maxcodehack
Posts: 412
Joined: Mon Sep 07, 2020 7:09 pm

Re: Интерпретатор Express

Post by maxcodehack »

Сорцы в студию :-)
(просто редко захожу на пару минут)
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор Express

Post by dozhdikov_igor »

Я еще пока код не оформил более прилежно, чем сейчас. :)
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор Express

Post by dozhdikov_igor »

Исходники проекта (лицензия: GNU GPL v2.0): https://github.com/Igoru99/KolibriMath
Last edited by dozhdikov_igor on Mon Feb 22, 2021 5:58 pm, edited 1 time in total.
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор Express

Post by dozhdikov_igor »

Новая версия KolibriMath 1.0.3.

Исправления:
- мелкие исправления в коде;
- запрещено отправлять строки в функции, к которым они не предназначены.

Добавления:
- добавлена возможность открытия файлов с KolibriMath (расширение *.km);
- добавлены комментарии (начинаются и заканчиваются "#");
- добавлена функция file(<путь к файлу>).

Внимание! Программа читает файл построчно, значит, в конце каждой строки не должно быть запятых и выражения следует вмещать в одну строку.
Также комментарии являются однострочными.
Last edited by dozhdikov_igor on Mon Feb 22, 2021 5:59 pm, edited 2 times in total.
kw33
Posts: 21
Joined: Sat Feb 13, 2021 2:00 pm

Re: Интерпретатор Express

Post by kw33 »

Отмечу, что уже существует EXPRESS, язык моделирования данных. Даже ГОСТ на него есть.
Ваш Express, полагаю, это собственная разработка.
maxcodehack
Posts: 412
Joined: Mon Sep 07, 2020 7:09 pm

Re: Интерпретатор Express

Post by maxcodehack »

Да, это он сам разработал, так что следует переименовать.
(просто редко захожу на пару минут)
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор KolibriMath

Post by dozhdikov_igor »

Новая версия KolibriMath 1.0.4.

Добавления:
- добавлен перенос строки;
- добавлен вывод строк.

Для добавления переноса между предложениями поставьте ';' вместо ','. Знак ',' теперь просто печатает в одну строку.
Для вывода строки просто напишите строковую константу в кавычках с разделением запятыми.

Image
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор KolibriMath

Post by dozhdikov_igor »

Новая версия KolibriMath 1.0.5.

Добавления:
- добавлен ввод пользователя (функции input() и input(<подсказка>)).

Исправления:
- мелкие исправления в коде.

Image
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор KolibriMath

Post by dozhdikov_igor »

Новая версия 1.0.6.

Добавления:
- добавлены функции ceil(<число>), mod(<число>);
- добавлен вывод позиции символа, вызвавшего ошибку при выполнении из файла.

Image
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор KolibriMath

Post by dozhdikov_igor »

Новая версия KolibriMath 1.1.0.

Добавления:
- добавлены блоки if и repeat;
- добавлен логический аппарат (но нет переменных логического типа, вместо них можно просто переменные числового типа брать).

Изменения:
- изменен режим чтения файла, теперь он читается посимвольно, что заставляет ставить запятые или точки с запятой в конце каждого выражения, за исключением последнего, но также теперь комментарии многострочные;
- мелкие исправления в коде.

Image
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор KolibriMath

Post by dozhdikov_igor »

Пример программы на языке KolibriMath (версия языка 1.1.0 или выше).

Данная программа предназначена для расчета действительных корней квадратного уравнения.

Image
Attachments
primer1.txt
(362 Bytes) Downloaded 161 times
User avatar
Kenshin
Posts: 41
Joined: Tue Jan 26, 2021 3:38 am

Re: Интерпретатор KolibriMath

Post by Kenshin »

Очень здорово получается) Хорошо бы интерпретатор в официальную сборку включить.
dozhdikov_igor
Posts: 28
Joined: Mon Feb 08, 2021 2:32 pm

Re: Интерпретатор KolibriMath

Post by dozhdikov_igor »

Спасибо большое за отзыв! Да, планирую закинуть как-нибудь.
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests