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)

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

Убожество полнейшее, просто вырвиглазность концентрированная какая-то...

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

Через прокси смотри. Хотя нечего смотреть. Кропнутая диаграмма, по которой автор водит курсором и куски элементов разворачиваются в подробности. Кодогенерации нет, конструирования нет. Ровно то, что я и озвучил.

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

Открылось в другом браузере. Посмотрел.

после современных интерфейсов вообще чудом кажется

Уж насколько я говенный GUI делаю, т.к. совсем не дизайнер, но это дно полное.

Ну что теперь скажите?

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

Нихрена это не пруф, пусть заново пытается.

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

Кодогенерации нет, конструирования нет

Конструирование? Ты еще думаешь, что я тут не строю диаграммы? Еще скажи что код пишу вручную, а не транслирую автоматически. Не так давно ты утверждал, что лабвьюшного прототипа Метапрога нет, но даже после видео у тебя хватает тупости (или вредности) утверждать, что чего-то там нет. Прям как некоторые утверждают, что высадки американцев на Луну не было и все снимали в павильоне.

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

Кок-пок

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

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

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

Не стар, а стара. Как бабка на лавке трындишь. Скрины есть, примеры кодогенерации есть, видео есть, а ей все не так. Иди в жопу.

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

Давай рабочий стол, докажи, что я не прав.

Ты и тогда найдешь к чему прицепиться. Так что обойдешься.

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

Кокпок

Снял какую-то откропленную херню на видео и думает, что ему теперь все поклоняться должны. Мямлит что-то невнятное про бабку.

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

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

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

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

Нет, не видел

чего просили от автора, а именно: процесса открытия проекта, его редактирования, сохранения, последующей генерации кода и компиляции в готовую программу, ничего этого нет.

Еще раз, попробуй запилить новое видео со всем вышеперечисленным, иначе тебя так и будут воспринимать, как пи... брехуна, который хвастается несуществующими успехами.

Кстати, почему в «сгенерированном» коде, использующем нуклеар, остались комментарии, переменные и прочее от готового примера с гитхаба ты так и не ответил.

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

Нет, не видел

Скачай и потыкай в Лабвью или хотя бы видео на ютубе найди и после этого расскажи как я на видео рисую диаграммы в Лабвью, а не лабвьюшном прототипе Метапрога.

Кстати, почему в «сгенерированном» коде, использующем нуклеар, остались комментарии, переменные и прочее от готового примера с гитхаба ты так и не ответил.

Ответил. Это вставки (копипасты) кода из примера.

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

Окей. Я понимаю, что стараться ради меня (на самом деле ради твоей же репутации, ну да ладно) ты не хочешь. Тогда просто скинь в тред файл диаграммы с примером в бинарном формате. Ведь он есть, не так ли? Пусть у нас не будет смотрелок - ничего, можно просто посмотреть устройство файла.

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

чего просили от автора, а именно: процесса открытия проекта, его редактирования, сохранения, последующей генерации кода и компиляции в готовую программу, ничего этого нет.

Еще раз, попробуй запилить новое видео со всем вышеперечисленным, иначе тебя так и будут воспринимать, как брехуна, который хвастается несуществующими успехами.

Еще раз повторить? Мне не трудно.

Ответил. Это вставки (копипасты) кода из примера.

Понятно. Это не генерация кода — «Это вставки (копипасты) кода из примера.»

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

Это вставки (копипасты) кода из примера.

Хорошо, пусть будут вставки Сишного кода в диаграммы. Почему на эпичном видео мы не видим такую замечательную опцию?

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

На видео та часть, которая перекочует в «настоящий» Метапрог. Остальное - костыли, прибитые гвоздями к Лабвью.

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

Ты тупой? Иди читай предыдущие сообщения.

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

Если не поумнеешь и не научишься читать сообщения в теме, следующая ссылка будет на Пушкина.

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

Остальное - костыли, прибитые гвоздями к Лабвью.

Т.е. весь остальной лабвью. Выходит, я был прав относительно плагина. По факту, вся гигатонна логики, которую от тебя скрывает лабвью в простых примитивах, должна будет быть перетыкана тобой на диаграммах и нуклеаре. Это еще веселее. Импосибру вообще.

Ты тупой?

Опять порвался.

Проходи мимо, не задерживайся.

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

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

Не логичнее ли предположить, что автор уперся в сложности гтк, решил съехать на нуклеар, а для сохранения лица (хотя какой уж там) решил выпускать обфусцированные примеры на Си, написанные вручную, чтобы хоть как-то получать твою помощь и предполагаемые донаты?

Я не Котечка, но... Нет, не логичнее.

Вы с Ребфорсом всё приписываете автору любовь к донатам как единственный стимул. Между тем, если бы это было так, он бы вёл себя гораздо тоньше. Это раз.

Обфусцированные примеры на Си, ЕМНИП, появились в этой теме гораздо раньше, чем разговоры про нуклеар. Это два.

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

Из его объяснений следует, что код генерируется из «прототипа метапрога», написанного на Лабвью. Отсюда можно заключить, что автор пока только кодогенерацией и занимался.

Просто у человека нет (пока?) системного мышления и представления о процессе разработки ПО. Донатить ему я, конечно, не буду (более того, мой список рисков на первой странице составлен специально для тех, у кого такое желание возникнет), но вот потестировать и указать на ошибки — почему бы нет. Но пока и тестировать особо нечего, корме тех самых примеров.

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

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

Снял с языка. :)

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

Между тем, если бы это было так, он бы вёл себя гораздо тоньше.

Очень и очень спорно. Дело в том, что все зависит исключительно от психологии просящего. Он мнит себя мессией и имеет гигантский ЧСВ, который мешает ему адекватно воспринимать реальность. Вероятно, поэтому он считает, что если будет вести себя как можно более увереннее и наглее, то люди пойдут за ним, как за сильным лидером, и поддержат его. Увы и ах, но это не работает с образованной аудиторией.

Обфусцированные примеры на Си

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

Автор банально не представляет себе всех трудностей, с которыми придется ему столкнуться при попытке повторить эту логику на обычных фреймворках. Это ясно из его вопросов. В общем, запасаемся попкорном.

liksys ★★★★
()
Последнее исправление: liksys (всего исправлений: 2)

@VarfolomeyKote4ka

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

@metaprog

Конструирование? Ты еще думаешь, что я тут не строю диаграммы? Еще скажи что код пишу вручную, а не транслирую автоматически. Не так давно ты утверждал, что лабвьюшного прототипа Метапрога нет, но даже после видео у тебя хватает тупости (или вредности) утверждать, что чего-то там нет. Прям как некоторые утверждают, что высадки американцев на Луну не было и все снимали в павильоне.

Тред не читал (ни один не читал, кроме двух последних страниц этого), но у меня вопрос.

То, что клоун не забанен за мультоводство - это такая тонкая шутка? Есть какой-то план по предварительному извлечению лулзов?

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

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

Видимо, ни на того, ни на другого никто особенно не жаловался. Он тут натурально как придворный юродивый - веселит публику. Его пинать-то пинают, но бить никто всерьез не станет.

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

Еще раз, попробуй запилить новое видео со всем вышеперечисленным

Да оставьте вы его в покое. Зачем тебе какие-то доказательства? Пусть они тут вдвоём с Котечкой метапрог пишут. Как напишут — позовут. Принципиальные вопросы, вроде, обсудили. А переливание из пустого в порожнее этот момент никак не приближает.

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

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

1. На каком участке кода нуклеаровского примера с диаграммами происходит открытие меню где есть кнопка для новой ноды?

2. Как сделать в нуклеаре кнопку и как сделать ее с картинкой?

3. Как сделать аналог гткшного текствью с прокруткой?

4. Как сделать аналог GtkEntry и обрабатывать нажатие ентера и прочих кнопок с него?

На первых порах, скорее всего, будет пустая доска с возможностью создавать «таблички» и чат-комнаты (то есть по сути многокомнатный чатик), дальше буду вкручивать уже просмотр и редактирование диаграмм. Возможность чатиться «на местах» останется и в «настоящем» Метапроге и это будет фишкой, недоступной ни одному текстовому языку.

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

Котечка и Метапрон это один человек. Если два то у него раздвоение личности. Писать метапрон они не собирались. Цель - металулзы.

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

Если это один человек, то это все реально какой-то фейл. Потому что лулзы можно извлекать, когда срется куча народу друг с другом с минимальным участием тролля. А тут происходит радостное дружное пинание клована.

Я вообще тогда теряюсь, в чем тут профит.

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

Возможность чатиться «на местах»

Не столь отдаленных.

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

Тут надо спрашивать у психиатра - что может доставлять радость психу. Возможно ему скучно а в палате ловит вайфай а на подареном ноутбуке есть пиратский лабвью ).

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

Тут смотри в чем прикол. Были огромные анонимные структуры вместо названий типов из инклюдов - «сегфолты, нечитабельно, ко-ко-ко». Сделал неанонимные структуры и вставил чуточку сишного кода из нуклеаровских примеров - «прототипа нет, все брехня, ко-ко-ко». Снял видео (!) - «это лабвью, все брехня, ко-ко-ко», хотя сами в жизни ни разу не видели Лабвью и мои скрины и видео на него совсем не похожи, надо быть слепым чтобы этого не видеть. Куриная тупость критиканов поражает.

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

А ты сам протестил последний пример? Как тебе те самые варнинги и сегфолты?:)

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

Думаю надо просто не кормить это существо и оно умрёт само по себе.

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

Одна теория экстравагантнее другой:)

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

чуточку

Скопипастил почти целиком.

Куриная тупость

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

Умным людям

Перечисли всех.

Например, скинут донатов на тысячу баксов

Твоя работа ничего не стоит. Кину один доллар, если снимаешь видео, как пляшешь гопак.

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

вижуал студию

Что-что? Та самая поделка от M$, в которой, несмотря на «вижуал», все писать надо в тексте? Это, кстати, одна из причин существования тега «нетекстовое программирование».

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

Скопипастил почти целиком.

Но есть и генерация, просто после замены структур неанонимными кода, генерируемого транслятором, стало намного меньше (но твоим куриным мозгам этот вывод недоступен). Там где вставки - есть отступы, где генерация - отступов нет.

игнорируя заведомо указанные условия

Условия? Ты мне тут условия ставишь? Не многовато ли на себя берешь?

Умным людям

Перечисли всех.

Из завсегдатаев темы сразу вспомнились VarfolomeyKote4ka, hobbit, iluha16, arturianec100. Артурианец - единственный, кто критикует делом, делая свою визуальную среду SkyVis. rebforce обещал сделать «Антиметапрог» почти 2 месяца назад, но на сегодня у него только лишь один скрин и куча россказней, не сопровождаемых делами. Илюха хоть и скептик (пока что) по графическому программированию, но на другие темы (например, общественно-политические) я с ним легко нахожу общий язык, думаю и с графикой со временем начнет меня понимать.

Твоя работа ничего не стоит. Кину один доллар, если снимаешь видео, как пляшешь гопак.

В клоуны я не нанимался.

metaprog
() автор топика

Я верно понимаю, что автор вот уже которую тысячу комментов подряд пытается написать BABA is YOU?

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

Зачем тебе какие-то доказательства?

Потому что «на словах он Лев Толстой, а на деле х... простой»

А я в первых темах поддерживал автора и был всячески за него, хотя идея графического программирования мне пока не зашла.

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