DRAKON.SU
https://forum.drakon.su/

Программа «ДраконКод». Обсуждение идей участника ibnteo
https://forum.drakon.su/viewtopic.php?f=62&t=6996
Страница 7 из 10

Автор:  ibnteo [ Воскресенье, 11 Июль, 2021 21:06 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Язык Котлин очень удобно использовать в качестве проблемно-ориентированного языка (DSL), очень удобно использовать лямбды вне скобок, не нашёл более удобного языка для таких задач, тот же JS не такой удобный, но ведь на схемах можно одинаково наглядно отобразить код на любом языке программирования, то есть, можно строить DSL на любом языке.

Автор:  Comdiv [ Суббота, 31 Июль, 2021 17:06 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

ibnteo писал(а):
буду публиковать в Play Market, в этом месяце если не успею, то в следующем точно.
Уже или не точно?

Автор:  ibnteo [ Воскресенье, 01 Август, 2021 19:03 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Comdiv писал(а):
Уже или не точно?

Ещё в работе, хотелось бы выпустить не сырой продукт.

Автор:  Luke Alan [ Воскресенье, 01 Август, 2021 22:26 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Have you considered clojure over kotlin? If I were to build a drakon tool tomorrow, I would use clojure because in addition to the main clojure language, it has a near-identical language clojurescript which compiles to javascript.

So, for one language implementation, which should be trivial given its lisp-like syntax, you get something which can be used in the desktop, web front end, and back end.

edit: nevermind, looks like kotlin can target JS? I didn't realize that

Автор:  Владимир Паронджанов [ Понедельник, 02 Август, 2021 10:33 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Luke Alan писал(а):
Вы думали о clojure над kotlin? Если бы я завтра построил инструмент drakon, я бы использовал clojure, потому что в дополнение к основному языку clojure он имеет почти идентичный язык clojurescript, который компилируется в javascript.

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

edit: Nevermind, похоже, что Котлин может нацеливаться на JS? Я не осознавал этого

Автор:  ibnteo [ Вторник, 03 Август, 2021 00:24 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Котлин подтолкнул к идее создать универсальный язык для транспиляции в другие языки, причём можно сделать несколько проектов, под разные стили программирования: Python, Lisp, Kotlin. Это уже можно будет делать после первой версии ДраконКода, как расширение его возможностей, ведь часть кода всё равно надо писать, под иконы прячутся лишь управляющие конструкции.

Мне Lisp-языки не зашли, вместо кода вижу много скобок. Котлин же настолько понравился, что перевесил очень быструю разработку на Flutter, так как Dart довольно скучный язык.

Автор:  ibnteo [ Суббота, 04 Сентябрь, 2021 02:01 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

По типу Kotlin DSL сделал простую библиотеку dslHtml.js и dslSvg.js, в качестве примера доработал 24-часовые часы, код нравится, на его основе буду делать ДраконКод, когда доделаю клавиатуру, уже совсем немного осталось. Для начала можно будет сделать аналог DroidScript, и уже на нём делать ДраконКод, с использованием DSL HTML JavaScript микрофреймворка.

Вложения:
scZTZhIp7Bw.jpg
scZTZhIp7Bw.jpg [ 104.66 КБ | Просмотров: 5055 ]

Автор:  ibnteo [ Воскресенье, 05 Сентябрь, 2021 16:56 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Сделал простую игру крестики-нолики на dslHtml.js и dslSvg.js: http://ibnteo.klava.org/html/tic-tac-toe.html
Нравится больше, чем Svelte, и не требует компиляции, можно будет разрабатывать ДраконКод прямо на смартфоне, на нём же, каждую следующую версию на предыдущей.

Вложения:
guPdQv90X3o.jpg
guPdQv90X3o.jpg [ 164.44 КБ | Просмотров: 5043 ]

Автор:  Comdiv [ Четверг, 11 Ноябрь, 2021 02:49 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

ibnteo писал(а):
когда доделаю клавиатуру, уже совсем немного осталось
Немного?

Автор:  ibnteo [ Пятница, 12 Ноябрь, 2021 02:21 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Comdiv писал(а):
Немного?
Уже доделываю раскладки для языков первой очереди, порядка сотни получается, и в магазин выкладываю. По мере создания выявляется множество деталей, некоторые языки сложно устроены, много нового для себя узнал. Выпускаю в минимальной конфигурации, некоторые языки но вторую версию придётся перенести.

Перед ДраконКодом возможно займусь созданием транспилятора с универсального языка на множество других, а то сложно работать одновременно на разных языках, надо помнить их различия, всё равно потебуется разбирать и собирать исходный код во что-то другое, возможно будет одновременно работа вестись, сразу два продукта в одном, в ДраконКоде ведь и код тоже придётся вводить.

Автор:  ibnteo [ Пятница, 12 Ноябрь, 2021 02:36 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Библиотеку dslHtml.js применил для создания приложения для настройки клавиатуры и справки, сделано в виде WebView, куски клавиатуры с разными слоями и раскладками отрисовываются в JS-коде в SVG, векторные иконки портировал прямо в код этого приложения, клавиатура выглядит точно так же, как и в Котлин-приложении, сделать её оказалось гораздо проще, чем в Андроиде.

Также сделал аналогичную библиотеку на PHP, чтобы писать HTML и SVG в виде PHP кода, уже применил её в работе.

Всё это будет использоваться в разработке ДраконКода.

Автор:  Владимир Паронджанов [ Пятница, 12 Ноябрь, 2021 21:09 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Владимир, вы обладаете большими знаниями, уверенно и настойчиво добиваетесь поставленной цели — создания программы «ДраконКод».

Пора уже задуматься об области применения и коммерческой стороне дела. Как вы оцениваете область применения и возможных потребителей вашей программы? Кто они и сколько их?

Естественная и обширная область применения языка ДРАКОН для целей программирования — программирование микроконтроллеров и микропроцессоров, интернет вещей, промышленная автоматика.
Лидером этого направления является Алексей Муравицкий.
Цитата:

Будет ли ваша программа удовлетворять требованиям Алексея? Будет ли Алексей применять вашу программу?

Или же у вас совсем другие планы?

Автор:  ibnteo [ Суббота, 13 Ноябрь, 2021 19:37 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Коммерческое применение ДраконКода пока не продумывал, сначала надо сделать работающий прототип. Спецификация будет открытой, реализаций может быть несколько, как открытых, так и закрытых, и под разные платформы.

У меня своё видение о написании программ на схемах, по ходу работы будет виднее, как что можно объединить с другими разработками.

ДраконКод должен быть универсальным, по разработке микропроцессоров не знаю, а в остальном вполне можно будет применять.

Автор:  Владимир Паронджанов [ Суббота, 13 Ноябрь, 2021 22:28 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Владимир, вам к сведению

Области применения
языка программирования ДРАКОН


микроконтроллеры; см.
программируемые логические контроллеры;
— сенсорные программируемые контроллеры;
— сенсорные панельные контроллеры;
программируемые (интеллектуальные) реле;
робототехника; см.

Автор:  Comdiv [ Четверг, 09 Декабрь, 2021 23:10 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

ibnteo писал(а):
Уже доделываю раскладки для языков первой очереди, порядка сотни получается
Всё ещё уже доделываете? И почему так мало :lol:(нет) языков было взято для первой очереди?

Автор:  ibnteo [ Суббота, 18 Декабрь, 2021 05:09 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Comdiv писал(а):
Всё ещё уже доделываете? И почему так мало :lol:(нет) языков было взято для первой очереди?
В магазин выкладываю, делаю это впервые, для меня это сложнее, чем само приложение написать, пришлось ещё и сайт сделать, политику конфиденциальности требуют держать на своём сайте, надо иллюстрации сделать в определённых размерах, кучу анкет заполнить пришлось.

Это раскладок столько, языков чуть больше 60, по большей части на основе латинского и кириллического письма, все что осилил, сделал в первой версии, остальные потом буду добавлять, во многие языки приходится вникать сильно, смотреть как по ним устроен юникод, стандартные раскладки, что устарело и что используется. Не вижу смысла запускать клавиатуру с плохой поддержкой языков, одно дело лишь для себя сделать, и другое, если для всех.

Автор:  Comdiv [ Вторник, 18 Январь, 2022 15:35 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Всё ещё выкладываете?

Автор:  Михаил Кузьмин [ Суббота, 22 Январь, 2022 13:48 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Интересная тема. Глубоко вникать нет времени. Просмотрел внимательно с интересом. Выскажу свои мысли. Может быть будут полезны. Блок-схема дрейфует в отражение последовательности работы процессора. Причем императивной части. Считается что присваивание и вообще работа с данными это только элемент с названием. А предполагается передать ход мыслей. В общем случае, адресация к данным тоже может порождать ветвление. Приведу здесь пример счетчика электроэнергии программы на моей архитектуре.

@ Byte (Interval, Count) Class ElectricMeter #Класс с параметрами времени в миллисекундах и счетчик суммирования»
New | {Timer T (Interval) ! | { Tick Timer.Start} # Создание таймера, создание подписки, сохранение счетчика.»
{ ‘ Создание свойств
Byte Counter :: Count #Количество тиков таймера до секунды при инициализации»
:= -=1 #Ведем счетчик. При каждой записи вычитаем 1»
Null {Counter =Count) Value =(Voltage/Counter)* (Electricity/Counter)} #При событии 0, формируем счет и восстанавливаем значение счетчика. Как произведение средних значений тока и напряжения.»
‘ Определение атрибутов Voltage, Electricity и Value
Float { Voltage := @( Float X ) Voltage += X # Суммирование значения при событии Write»
=: 0 # При чтении обнуляем счет.»
Electricity := @( Float X ) Electricity + =X # Суммирование значения при событии Write»
=: 0 # При чтении обнуляем счет.»
Value 0 ‘Начальное значение
:= @( Float X ) Value+ X #Значение счетчика наращиваем при записи».
}
‘ По каждому тику ведем счетчик, читаем значение тока и напряжения по физическому адресу порта и суммируем
Void Tick :[Move Counter ,0 Move Voltage, “vvvv” Move Electricity ,“eeee”]
}

Объект создается из класса с параметрами значения интервала времени и значения счетчика (Interval, Count).
При создании объекта событием выполнение «|» запускается таймер с значением интервала.
Класс состоит из атрибутов Counter, Voltage, Electricity и Value назначение которых, соответственно вести счетчик тиков, значений напряжения, тока и значения мощности.
Функционал определяется событиями. Итак по порядку:
Счетчик Counter по событию инициализации «::»получает начальное значение (Count), при событии Запись «:=» независимо от того какое значение записывается вычитает 1 (т.е. Ведет счет) и по событию Null вычисляет значение для добавления Value.
Атрибуты Voltage и Electricity при записи суммируют записываемые значения и при чтении обнуляются. Событие «=:» инициируется выражением по событию Null атрибута Counter
Атрибут Value только суммирует значения по событию «:=».
По каждому событию Tick одновременно (о чем говорят квадратные скобки) выполняется запись в атрибуты Counter, Voltage и Electricity.
Здесь нет последовательности и как это нарисовать, я пока не представляю. Здесь есть описание порядка выполнения в каком то смысле. Но, назвать это алгоритмом можно с большой натяжкой.

P.S. Comdiv Я принес ( и приношу) извинения за грубый ответ в прошлом году. Невнимательно прочитал ваше замечание. Не хватает времени. Это не оправдание, а попытка объясниться.

Автор:  ibnteo [ Воскресенье, 23 Январь, 2022 18:20 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Comdiv писал(а):
Всё ещё выкладываете?
Да, биллинг доделываю, и появится в магазине, остальное готово.

Автор:  Comdiv [ Понедельник, 24 Январь, 2022 00:10 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Что означает биллинг в вашем случае?

Страница 7 из 10 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/