LINUX.ORG.RU

Metaprog: универсальная графическая среда программирования [в разработке] часть 7

 , , ,


1

3

FAQ

0. Где отсутствующие примеры и пункты FAQ? Как вообще читать эти темы?

Чего нет в этой части - есть в прошлых. Для того, чтобы понять идею Метарпога, не обязательно читать тысячи комментариев из всех тем. Необходимый минимум собран в заголовках тем. Читайте заголовки и ссылки в них. Кстати, обновляется только заголовок последней темы, если эта тема уже не последняя - она не обновляется. В более новых темах пункты FAQ могут обновляться и в случае расхождения действительна более новая версия.

10. Примеры выдают варнинги при компиляции (у кое-кого еще и сегфолтятся)

Решено вводом неанонимных структур, если идет обращение к данным из сишных инклюдов.

12. Зачем ты пытаешься сделать «графический C» (используя подходы к разработке, структуры данных и прочее из C, но в виде блоксхем)?

Потому что я хочу программировать именно в графике и мне нравится Лабвью, но не нравятся ограничения его бекенда, обусловленные в основном копирастией. Хочется иметь возможность программировать не только на высоком, но даже на самом низком уровне (драйвера, ядра ОС, микроконтроллеры итп) и оперировать указателями, как в Си, но делать это в графике, а не в тексте.

13. Есть же first order logic, лямбда исчисление и т.д. Ты бы изучил для начала альтернативы, может для данного вида представления имеются лучшие подходы?

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

Примеры

Предыдущие см. в прошлых темах

Metaprog: универсальная графическая среда программирования [в разработке]

Metaprog: универсальная графическая среда программирования [в разработке] часть 2

Metaprog: универсальная графическая среда программирования [в разработке] часть 3

Metaprog: универсальная графическая среда программирования [в разработке] часть 4

Metaprog: универсальная графическая среда программирования [в разработке] часть 5

Metaprog: универсальная графическая среда программирования [в разработке] часть 6

Неанонимные структуры

В этом простом примере с открытием окошка на 10 секунд давние читатели увидят очень важное изменение. Транслятор стал использовать имена структур и типов из инклюдов вместо анонимных структур. Здесь есть вставки сишного кода, так в некоторых местах было проще, чем переделывать на графике, читая текстовый код. Вставки подписаны по-украински. При желании пиктограммы можно и к ним рисовать, но они - всего лишь временные костыли, так что заморачиваться с рисованием не вижу смысла.

Главная функция:

https://i.postimg.cc/8kJdT96h/image.png

Открытие нового окна:

https://postimg.cc/kBX6rB0P

Та же диаграмма в видео:

https://streamable.com/jqng1

Видно всплывающие подсказки, в конце удаляется и снова проводится один из проводков.

Начало рисования SDL, то что должно делаться каждый цикл в нуклеаре:

https://postimg.cc/tYS199bZ

Вставки, как видите, могут принимать и даже возвращать аргументы, как вставка обработки событий SDL возвращает running. Потом этот проводок с running будет подключен к главному циклу.

Кстати, что мешает мне сейчас сделать главный нуклеаровский цикл, ведь циклы ж уже готовы? Смотрите на этот скрин:

https://i.postimg.cc/65N2KMQz/image.png

Почти такой же пример, только есть цикл и нету sleep (чтобы можно было полюболваться на окошко 10 секунд). Что тут не так? Схема правильная, но надо еще научить транслятор ставить «тупиковые» ветки, берущие начало в цикле, в пределах цикла по-умолчанию. Сейчас код nk_end и малювання SDL оказываются за пределами тела цикла, буду это исправлять. Где-то там же находится ключ к полному налаживанию ветвления через if и switch.

Сам код:

https://pastebin.com/f5PDfi77

Использовать сишные имена типов и структур удалось благодаря многоязычным строкам, которые внедрялись для русских, англичан и прочей не понимающей украинский публики. Если в названии типа есть строка на языке «С», вместо примитивного типа (или тела структуры из примитивных типов) ставится сишный идентификатор типа из инклюда.



Последнее исправление: metaprog (всего исправлений: 15)
Ответ на: комментарий от liksys

как ты мог сделать рисовалку графиков, если до сих пор ковыряешься с примитивными примерами графических библиотек?

На самом Лабвью.

metaprog
() автор топика
Ответ на: комментарий от Deleted

Я не против. Пусть запишет, и мы признаем, что у него есть кривой генератор кода. Пока все идет к тому, что даже генератора нет.

liksys ★★★★
()
Ответ на: комментарий от Deleted

Я знаю что он сделает, покажет свои примеры и хеллоуворлды, как всегда. Потом можно будет поддерживать срач еще некоторое время.

vq156 ★★
()
Ответ на: комментарий от metaprog

Чем посоветуешь редактировать видео

Самописным редактором видео на метапроге, конечно же! Все остальные-то написаны на текстовых языках.

i-rinat ★★★★★
()
Ответ на: комментарий от metaprog

Ты давай кароч полное видео. А то обрежешь самое важное. Давай видео с запуском метапрога, с окном, чтобы был рабочий стол целиком. Подвигай окно, чтобы бы убедились, что это не фотошоп.

liksys ★★★★
()
Ответ на: комментарий от liksys

чтобы был рабочий стол целиком

Тут придётся подождать: рабочий стол на метапроге ещё не создан.

i-rinat ★★★★★
()
Ответ на: комментарий от metaprog

Я с помощью консольного ffmpeg обычно так делаю %) Но есть еще openshot, говорят он хороший.

Комманда для ffmpeg такая:

ffmpeg -ss 00:00:30 -i input.mp4 -t 00:00:10 output.mp4
Где 00:00:30 это момент с которого надо вырезать, а 00:00:10 это размер отрезка. Получается вырежется с 30 по 40 секунду отрезок и запишется в output.mp4...

Deleted
()
Ответ на: комментарий от metaprog

Код-то есть, в примерах.

Это не код, это аналог бинарников, генерируемых клмпилятором. Они не предназначены для чтения.

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

Прикинь, как было бы прикольно, если Линус в рассылку скинул фотографию кода с монитора. Мол, у меня есть код, вот. Тупо, но прикольно. В общем-то, ты так и делаешь. Это прикольно, признаю.

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

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

metaprog
() автор топика
Ответ на: комментарий от liksys

«Можешь идти мимо» - это значит что он не собирается предоставлять пруфы. Короче когда крыть уже нечем, он включает эту фразу. Проверено несколько раз.
Это может продолжатся бесконечно долго. Я потерял интерес уже на второй теме, а все остальное - повторение одного и того же, по кругу.

vq156 ★★
()
Ответ на: комментарий от metaprog

Твоего мнения я не спрашивал. Флудишь тут только ты, имитируешь процесс разработки,спрашивая советов, которые нагуглить может даже ребенок. Бесполезный, упрямый неуч с манией величия и нежеланием развиваться. Фу таким быть.

vq156 ★★
()
Ответ на: комментарий от metaprog

файл диаграмм типа диаграмма.mpbd

Ох, сколько тебя открытий ждёт… Большинство, правда, не очень приятных.

i-rinat ★★★★★
()
Ответ на: комментарий от vq156

Перешёл на личности это грубо. Не надо так. Тут и без этого тем для глумления выше крыши, зачем опускаться до перекидывания личными оскорблениями?

i-rinat ★★★★★
()
Ответ на: комментарий от liksys

Нет, просто правила ЛОРа мешают мне посылать тебя по нужному адресу, как Пушкин Толстого, приходится посылать в Дембровского. Все равно недалеко до нужного места.

metaprog
() автор топика
Ответ на: комментарий от metaprog

Ну да, ну да. Как обычно, нет аргументации - посылаешь по адресу.

liksys ★★★★
()
Ответ на: комментарий от i-rinat

А над чем глумиться? будет и 8 и 9 тема переливания из пустого в порожнее. Автор просто троллит местную публику, я не верю что можно быть таким отбитым невеждой.

vq156 ★★
()
Ответ на: комментарий от metaprog

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

Чтобы ВНЕЗАПНО не оказалось, что оный прототип метапрога на лабвью - всего-навсего какой-нибудь цугундерный плагин к нему со странными настройками.

liksys ★★★★
()
Ответ на: комментарий от metaprog

У тебя даже посылать-то толком не выходит, не то что софт натыкивать. Настолько скудный, видимо, словарный запас и так херово с фантазией, что приходится обращаться за цитатами к писателям. Между тем, посылать можно куда более виртузно, используя лишь цензурные слова - я уже это демонстрировал в твой адрес. После чего ты и порвался, съехав на стихотворения и повторение за мной же.

liksys ★★★★
()
Последнее исправление: liksys (всего исправлений: 1)
Ответ на: комментарий от i-rinat

Ну я не знаю, слушай. Неуч - это не оскорбление, а реально констатация факта по совокупности тредов. Остальное более-менее тоже, только с чуть более негативной окраской.

liksys ★★★★
()
Ответ на: комментарий от Deleted

На что угодно, только rgho.st в России заблочен.

Deleted
()
Ответ на: комментарий от liksys

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

К писателям я обращаюсь чтобы не нарушать правила форума. Ссылка на матерный стих матюком не считается.

metaprog
() автор топика
Ответ на: комментарий от metaprog

Это совершенно неважно. Ведь тебе в голову постоянно приходит только это направление.

liksys ★★★★
()
Ответ на: комментарий от metaprog

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

Еще более смешной и противоречащей твоим же словам фигни ты выдумать не мог.

liksys ★★★★
()
Ответ на: комментарий от metaprog

Невыразительное говно.

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

liksys ★★★★
()
Ответ на: комментарий от metaprog

Бабе-ликсусе не угодить, такой уж у нее характер... Вечно чем то недовольно, то я кривляюсь, то все подделка, то теперь уже видео не так обрезанно, а может это нарисованно а анимированно вообще, снимали там же где и высадку американцев на луну?

Deleted
()
Ответ на: комментарий от metaprog

Я уже сказал, что не так. Это говно собрано из готовых компонентов лабвью, и мы не видим ни окна программы, ни кодогенерации. Не показано, как натыкивается диаграмма и как из этого получается код на Си. Без соблюдения указанных условий (которые, между прочим, я озвучил заранее), пруф не считается пруфом, поскольку оставляет шанс для того, что это всего лишь один из параметризированных плагинов к лабвью, коих вагон и маленькая тележка.

liksys ★★★★
()
Ответ на: комментарий от Deleted

Извини, я по-петушиному не разумею.

Господа-присутствующие, переведите, пожалуйста, кто-нибудь, на русский.

liksys ★★★★
()
Последнее исправление: liksys (всего исправлений: 1)
Ответ на: комментарий от liksys

Ахахах, ну это уже совсем кринжовая придурь какая то.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.