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)

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

в воздухе содержится кислород необходимый для течения химических реакций в биологических клетках животных

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

меньшинство из них - учёные которые сами всем этим занимались и проверяли выводы других

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

Но и физики, и генетики приходят к выводу, что возраст мира не может быть меньше 10 тысяч лет (как говорит религия «от сотворения мира»). Физики - по изотопному анализу камней утверждают, что Земле и другим объектам Солнечной системы около 4,5 млрд лет:

https://ru.wikipedia.org/wiki/Радиоизотопное_датирование

Генетики - по филогенетике утверждают, что жизни миллиарды лет:

https://ru.wikipedia.org/wiki/Филогенетика

А также то, что 10 млн лет назад мы с шимпанзе были одним видом.

Почему же религия утверждает, что миру всего лишь тысячи лет? Потому что примерно столько лет письменности. Люди смогли начать считать годы лишь с появлением письменности, а 3-5 тысяч лет назад, задолго до появления современной науки, даже самые образованные люди (жрецы, писавшие «священные писания») не могли мыслить масштабами миллионов и миллиардов лет.

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

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

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

Физика позволяет слетать со скоростью света в галактику от которой миллиарды лет и назад, потратив на это 50 лет. Своих лет. А на Земле за это время пройдут те же миллиарды лет.

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

И даже за 7 дней так можно. Своих дней.

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

вполне естественно что человеку сложно поверить что его душа всего лишь следствие химических реакций протекающих в большом кол-ве соединённых друг с другом биологических клеток.

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

В http://days.pravoslavie.ru/ /в частности/ на каждый день года
приводятся суждения великого святого - святителя Феофана Затворника.
Почитайте «Добротолюбие» и «Жития Святых» /не обязательно от «корки до корки»/.

Владимир

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

Ой-ой-ой, мне и так много чего прочитать насоветовали, а я даже K&R читал только по диагонали. Лучше займусь Метапрогом:)

Кстати, читал Линуса Just for fun?

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

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

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

в небо смотрели изнутри и снаружи

Изнутри и снаружи атмосферы планеты Земля если быть точным, так как понятие «небо» - весьма условное.

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

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

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

купи микроскоп, поймай лягушку и рассмотри хорошенько

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

Смотри, 20 страниц - и прощаемся до 8 темы.

Если никто ничего стоящего не предложит - буду сам рисовать. Только не говорите потом что некрасиво.

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

Добавочка.
Вот благодаря вашему треду научился и участвовать в форуме и одновременно работать /раньше треп сильно мешал/.

Владимир

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

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

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

Я написал 2783 комментариев включая этот. Это чуть больше одной из 7 тем. Моих комментариев в моих темах не больше 20%. Так что банить надо не только меня. Или никого не банить и писаться, тем более есть о чем. Например, о разработке Метапрога и конкурсе на пиктограммы.

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

Если бы вы сказали, что идет оживленное обсуждение разработки ...
Но этого нет!
Видим только ваши вопросы /ответы на которые вы ленитесь получить сами/ и ответы на них котечки.
Это кому и форумчан интересно и нужно?

Владимир

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

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

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

Это кому и форумчан интересно и нужно?

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

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

Да суть то всех тем какая?
На 99% вам рассказывают, что вы неуч /неуч сказал не для того, чтобы вас обидеть/.

Владимир

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

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

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

Вот таких как баба Ликсуся и надо банить. Хотя не надо, она забавная:)

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

А почему бы ее в «Talks» не продолжить?
Вот тогда можно открывать хоть 1001 тред и все будет ok.

Владимир

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

хотя бы просто интересно посмотреть что у автора в итоге получится учитывая его не желание учиться а просто писать софт тыкая мышкой и произойдёт ли в итоге эволюция самого автора

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

Вот как раз в «Talks» и была бы тема - «Об разработке Metaprog».
Если что мне ваша тема сильно не мешает ... /но лучше бы продолжить ее в Talks/.
Потому как в основном тема наполнена не диалогами об разработке, а критикой вас.

Владимир

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

«Если долго мучиться - Metaprog получится!»

Владимир

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

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

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

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

Да можно и не банить /зачем крайности/?
Хотелось бы, чтобы диалог шел именно об разработке ...

Владимир

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

вполне естественно что диалог идёт на разные темы. как и при оффлайн общении любой разговор перетекает от одной темы к другой.

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

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

Очень здравое суждение.
И все же форумы нужны.
Да и не все на них так плохо порой бывает ...

Владимир

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

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

http://www.stihi-xix-xx-vekov.ru/esenin-stih2.html

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

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

П. С.: как тебе такое?:)

Выглядит как попытка самоубийства эмобоя.

П.С. а если серьезно, то полное неподдерживаемое и нерасширяемое говно.

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

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

Теоретически да, а практически за один день набралось 1000 сообщений с критикой.
Какая кому от этого польза.
Metaprog оно надо?

Владимир

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

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

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

Я лабвьюшный прототип Метапрога и поддерживаю, и даже расширяю. Все просто и понятно, если интерактивно тыкать в Лабвью, а не смотреть в скрин и видеть фигу. Хотя даже в скрине можно увидеть не фигу, а хотя бы текстовые константы, и сравнить с примерами кодогенерации.

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