LINUX.ORG.RU

Метапрог-прототип 34 + СУВТ по логическому типу

 , , ,


0

3

Следующая тема:

Метапрог-прототип 42

Подпишусь в поддержку Столлмана Bitcoin-кошельком из первой темы про Метапрог:

Metaprog Project supports Richard Matthew Stallman. Shame to SJW, Big Tech and Big Media. We need to get rid of them or Big Money will enslave us. It is do or die! Stay straight, RMS!

Подпись:

H/3cqHl7HGdAQd9K/io474IbLYlIKi/8R6pw1Vbpz0oTN4kihI5YO4dIdZo2VRdJbSp8kWmtWgC5TRTs0MkBIAo=

Подробности:

Движение отмены Столлмана (комментарий)

Следующая версия:

www.linux.org.ru/forum/development/16219448

Скачать:

https://mega.nz/file/6VJCEboQ#N3pu86bqI31Jp15aHWt6l-FIkY_RUws0CZK9aMcvxZo

В версии 34 исправлен тот же баг что и в 33, но другим способом, так как багфикс из версии 33 вызывал другие баги.

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

К выпуску версии 32 неожиданно обнаружилось, что СУВТ может иметь переключатель логического типа. То есть, можно задавать типы на значения «да» и «нет». Никаких изменений для этого вносить с 31 версии не пришлось, надо лишь задавать в определении СУВТ типы по значению СУВТ 0 на «нет» и 1 на «да». Из изменений - некоторые исправления багов (например, с кодогенерацией структур и операций над структурами под указателями), а также экспериментальная фича отрисовки канваса через dll-вызов окошка на SDL, за подробностями обращаться к MOPKOBKA или kote4ka в Метапрог онлайн.

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

В версии 30 - исправление бага с сишной трансляцией циклов с регистрами. Теперь их значение берется на сишном уровне не напрямую, а через промежуточную переменную. Это позволило реализовать алгоритм вычисления чисел Фибоначчи, где есть непосредственная передача данных между разными регистрами. Метапрог-схема находится в меню обучение - примеры - Фибоначчи, выглядит она так:

https://i.postimg.cc/D0W8v7XZ/image.png

Для сравнения - тот же алгоритм на LabVIEW:

https://i.postimg.cc/CLqz9L0r/image.png

Сишная трансляция:

https://pastebin.com/Z8rzvZpQ

Сравнение с тем же алгоритмом на «аналоге» Метапрога с бекендом на python говорит само за себя:

Metaprog здорового человека (комментарий)

В версии 29 - крупные изменения системы типов. «Встроенных» типов, вытягиваемых через меню «структуры», больше нет, все они теперь представлены в стандартной библиотеке. В особенности изменения коснулись числовых типов: теперь такие типы как число, дробь, целое, знаковое и беззнаковое представлены как многотиповые из соответствующих типов. Например, беззнаковое - многотиповой из 8, 16, 32, 64 и 128-разрядных беззнаковых, целое - многотиповой из знакового и беззнакового, число - многотиповой из целого и дробного. Теперь такие типы можно обрабатывать как многотиповые, поступая с числами разных типов по-разному.

В версии 28 переключатель (аналог сишного switch) работает с многотиповым типом. Выполнение схемы происходит только на ветке, соответствующей поданному на переключатель типу. Ветвление происходит не в рантайме (как в случае СУВТ), а при кодогенерации - не соответствующие поданному типу ветки не генерируются. Теперь осталось сделать цикл по структуре.

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

Также обнаружилась (но пока не исправлена) проблема с терминалом счетчика повторений цикла в цикле по условию - пока что не используйте его!

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

В версии 26 исправлена трансляция циклов при определенных условиях (не всегда корректно транслировались циклы с жесткими последовательностями, идущими к входному блоку).

В версии 25 исправлена трансляция сложных рекурсивных структур с СУВТ.

В версии 24 был исправлен баг транслятора, проявившийся в версии 23: на некоторых схемах (например, отправки данных по TCP) код, отвечающий за поток данных, «вливающийся» в ветки с условиями, мог сгенерироваться после кода самого условия.

В версии 23 исправлен еще один баг с упаковкой проектов, а также баг трансляции условных схождений.

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

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

Предыдущая версия:

Метапрог-прототип 19 + API на СУВТ + ускорение трансляции



Последнее исправление: metaprog (всего исправлений: 21)

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

Ну да, на заборе тоже много что написано. Там ещё было написано про универсальную среду программирования, что-то не нашёл.

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

Вы из раза в раз проворачиваете один трюк.

Где это? На примере любого поста анализ продемонстрируйте.

Ну и какой смысл с вами общаться?

Дак Мы ни с кем и не общаемся. Мы просто отвечаем на комментарии.

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

Оно как бы к лучшему ничего не поменяло

А должно было? Главное, что у Вас объективная оценка теперь есть ;)

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

Ну да, на заборе тоже много что написано

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

Там ещё было написано про универсальную среду программирования, что-то не нашёл.

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

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

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

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

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

Забавно, что я уже недели две не заходил сюда, а клоунада продолжается силами самих метаклоунов. Страниц 5-6 нафлудили.

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

А на моих фекалиях может работать ядерный двигатель

А сколько в Ваших фекалиях радиоактивных элементов? На ма-а-а-ахонький двигатель должно хватить, по идее ;)

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

Э-э-эх, напомнили Нам 2013-й, когда Мы аватарки меняли чуть ли не каждый день, и даже огребали из-за этого ;)

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

Дак Мы ни с кем и не общаемся

Да я уже понял что с ботом разговариваю. So my, my, my bad.

Razk
()

Там ТС кстати ищет самозабана в теме про ковид. Интрига однако.

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

Ну так зачем мертвопрога тогда включать.

Вначале призвали а потом на попятную.

Не заходи и дальше

Хотя это же не ваше.

Опять людей обижаете ой вей.

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

Тупите тут вы. Если вы у него в игноре то касты не попадут в уведомления и ваше щедрое предложение затеряется в флуде мертвопрога.

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

Я уже доказывал и показывал что я не в игноре у него. «Игнор» это у него такой способ не отвечать на неудобные вопросы.

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

Я думаю после того как вы его погнали из треда это не имеет смысла. Да и где уверенность что я тоже не в игноре XD. Я думаю после такого плотного общения с вами(включая ТС и мертвопрога) пути назад для меня уже нет. Самозабанится разве что, но я пока в раздумьях. Я с вами если что общался, даже если вы просто отвечали на сообщения.

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

Каст сработал, когда один из юзеров процитировал сообщение с ним. Так-то я этого не видел. Но вообще забавно: сами зовут, а потом удивляются. Типичные метапрогеры: ноль логики, одна клоунада.

liksys ★★★☆
()

Небольшой вброс

Я как-то удивлён, что metaprog-а ещё не забанили, учитывая, что его поделие нарушает лицензии LabVIEW, а значит, подставляет ЛОР под удар копирастов.

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

Да я их тоже ненавижу всей широтою своей души. Но пока они при власти, их надо сторониться, во избежание.

Вот стану гетьманом, вот тогда…

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

Где вопросы по прототипу Метапрога?

Прототип настолько страшен, что лишает дара речи? В том числе и письменной.

i-rinat ★★★★★
()

Запоздало, но всё же.

Дорогой @metaprog! От всей души поздравляю тебя с первым сентября и желаю тебе хороших оценок, легкой учебы и слушаться маму, а то перестанет терпеть увальня дома и отправит работать на стройку.

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

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

Тебе-то что?

Занятно наблюдать.

Сам оффтопа целую страницу развел

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

Так запустил? Где вопросы по прототипу Метапрога?

Оно неюзабельно. Уже не один человек на себе проверил. Какие тут могут быть вопросы. Пилите дальше.

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

Стандартные вопросы по метапрогу. Когда будет нативный метапрог для linux? Какие шаги для этого предприняты за последние месяцы?

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

Да я их тоже ненавижу всей широтою своей души

Но берешь во внимание их маньки. М... мужество. Не позорь Житомир.

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

Это не ко мне. Я свое отучился. К счастью, школа позади. Золотые осень и прочая скучнейшая дичь - не завидую школьникам. Как Илюха писал:

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

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

А вот ВУЗ вспоминаю с куда более теплыми чувствами. Но уже вспоминаю.

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

Когда будет нативный метапрог для linux?

Зависит от тебя и твоего участия.

Какие шаги для этого предприняты за последние месяцы?

Развитие прототипа.

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

Зависит от тебя и твоего участия.

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

Развитие прототипа.

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

Как назывался твой ВУЗ? Мне просто интересно, это у вас всё настолько плохо с образованием, или это ты уникум такой.

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

собрать нативное поделие на нем ты все равно не осилишь

Очередной приступ синдрома Ванги.

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

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

Как назывался твой ВУЗ?

Узнаешь когда сочту нужным представиться. То есть, не в этот раз.

Мне просто интересно, это у вас всё настолько плохо с образованием, или это ты уникум такой.

С образованием у нас не так уж и плохо. Если не считать айтишных специальностей, но там оно везде плохое - учат питоны и джавы вместо того чтобы разрабатывать что-то типа Метапрога.

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

Очередной приступ синдрома Ванги.

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

не достойных альтернатив

Опять твоя мантра.

Узнаешь когда сочту нужным представиться. То есть, не в этот раз.

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

учат питоны и джавы вместо того чтобы разрабатывать что-то типа Метапрога

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

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

А что тебе мешает ВУЗ назвать то. Думаешь через вуз тебя копирасты найдут.

Я например во ВГУЭС учился. Все не будет мне теперь спасенья XD.

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

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

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

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