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)

Версия 24

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

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

что концепция сишки в квадратиках требует как минимум пересмотра

Успешность сишки говорит об обратном. Сколько там убийц сишки она уже пережила?

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

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

Я тоже активнейше пользовался экселем, пока не познакомился с Маткадом и Лабвью.

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

Ты просто облекаешь алгоритм в другую форму

Ну всё, за бурную историю развития ЭВМ ничего нового, всё те же перфокарты для ткацкого станка на новый лад.

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

столько воя о них было в предыдущих тредах

Потому что это актуальная на данный момент задача.

Очередной вариант Variant’а

Ну так в C-то его нет, вот и приходится переизобретать в очередной раз. А что ещё делать? И так библиотек многовато в зависимостях.

автор вроде утверждает, что не может

Пруф.

зачем было отвлекаться на СУВТ, а не решать первоочередную поставленную цель?

День ехать, чтобы за пять минут долететь ;)

И как неизбранные осваивают те же языки программирования?

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

По видосикам на ютубе?

Зумерота про диски с видеокурсами не знает, мда. Евгения Попова, например. Мы в оффлайне по ним PHP изучали, ибо другой инфы не было. С тех пор отвращение к получению информации через видосики ;)

приходится читать инструкцию

Потому что нищеброд — голь на выдумки хитра. Белые люди вызвали бы для очистки мастера. Ну или вовсе не парятся о таком, пока оно ВНЕЗАПНО не сломается.

запустить процесс разморозки или наоборот быстрой заморозки?

А зачем? Холодильник как холодильник, включён — морозит, выключен — не морозит, чего ещё надо? Даже колёсиком регулировки температуры в старых холодильниках мало кто пользуется.

А ещё весьма распространена ситуация, когда дорогущий мобильник покупают исключительно для понтов, а его широкими возможностями не пользуются, только звонят ;)

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

Двадцать раз рассказывали, как в жопу сношаться, даже показывали, в деталях. А оно всё равно по бабам бегает. Ну вот что за необучаемое?

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

Серьезно? Я вот специально прошарил его стандартную библиотеку - тоже не нашел. Плохо искал или его там действительно нет? Зато что там точно есть - так это портянки текстового кода на джаве в почти каждом блоке. Видимо, без того чтобы писать код на джаве в MyOpenLab ничего серьезного не сделаешь. Кстати, в Метапроге (даже на нынешней стадии развития прототипа) на Си надо писать только инклюды:)

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

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

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

No code, no stress, no metaprog

Это надо слоганом проекта сделать.

Тут как раз песню в тему слушаю. :)

All these images in my mind

There’s nowhere to hide

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

Потому что это актуальная на данный момент задача.

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

Зумерота про диски с видеокурсами не знает

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

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

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

А зачем?

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

ЗЫ: че ты так расстроился то, что у меня есть кофемашина? Кофе любишь? Ладно, могу тебя еще расстроить: робот-пылесос – это тоже крутой прибор, хотя он тоже иногда требует обслуживания, которое по инструкции выполняется с минимальными усилиями без вызвова «белыми людьми мастера». В инструкции не написано: вызовите мастера, в инструкции написано «сделайте какие-то примитивные действия».

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

никаких полезных или бесполезных примеров использования СУВТ на форуме приведено не было

А для кого их приводить, когда тут даже поставить Метапрог, чтобы их потыкать, никто не в состоянии? Кроме тех, кто и так уже в Метапрог.Онлайн.

без этого метапрог сам на себе вполне реализуем

С такой постановкой вопроса он и на брейнфаке реализуем. Надо на брейнфаке писать, что ли?

потратится

Отказано ;) Нам случайно потраченных на мобильный инет 8 грн. (а то и 16, не помним точно) хватило вдоволь ;)

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

Совковое СПВ-шное мышление.

он в мобильном приложении объявляет

Ну сравнили приложение с инструкцией. Кстати, Вы заметили, как похудели инструкции к мобильникам? Там кроме базовых вещей типа вставки SIM и подключения наушников ничего толком не объясняется.

А спросил тебя, а сможешь ли ты?

Тем, кто не донатили на МЕРТВОПРОГ, Мы ничего делать не собираемся :P

че ты так расстроился то, что у меня есть кофемашина?

Чего? Где?

Кофе любишь?

Не пьём, только если угостят ;) Вотще на наркоту всякую подсаживаться.

которое по инструкции выполняется с минимальными усилиями

А после этих усилий хрен починишь, ага. Знаем мы этих самоуверенных мускулистых хомячков, которые VGA умудряются вверх ногами запихнуть…

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

А для кого их приводить

А вот для всех, чтобы показать преимущества визуального программирования. Зачем тогда метапрог тут выкатывает ссылки на новые версии? Это совершенно уныло без примеров использования. Светило совершенно не может привлечь внимания к своему продукту тех, кто бы мог этим заинтересоваться. А остальные только либо немного сочувствуют, как и я, либо откровенно стебутся над автором прожекта.

Отказано ;) Нам случайно потраченных на мобильный инет 8 грн. (а то и 16, не помним точно) хватило вдоволь ;)

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

Тем, кто не донатили на МЕРТВОПРОГ, Мы ничего делать не собираемся :P

Дурачка из себя начал строить? На вопрос то сможешь ответить? Сможешь без инструкции, или нет?

Чего? Где?

Ну а что ты так возбудился то по этому поводу?

Не пьём, только если угостят ;) Вотще на наркоту всякую подсаживаться.

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

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

А после этих усилий хрен починишь, ага.

Нет, как раз, если аккуратно ухаживать за бытовой техникой, то она прослужит долго, и в ремонт ее не придется таскать. У меня некоторым вещам уже лет 10, хотя гарантированный срок службы заявлен 5 лет.

Знаем мы этих самоуверенных мускулистых хомячков, которые VGA умудряются вверх ногами запихнуть…

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

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

Зумерота, это кто? Опять какой-то новый молодежный сленг?

Это люди, которые родились в 2003 и позже.

Воспринимай как школота.

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

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

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

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

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

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

Совковое СПВ-шное мышление.

Я вот буквально в пятницу купил электропилу для дачи. В инструкции специально подчёркивается, что пила БЫТОВАЯ, для промышленного применения не предназначенная. Тем не менее, туда надо заливать масло, устанавливать полотно и натягивать цепь, неправильное натяжение может привести к печальным последствиям. И чистить её, заразу, надо, забивается быстро. И всё это делает владелец, не сервисный центр. Инструкция с картинками прилагается.

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

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

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

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

Зачем тогда метапрог тут выкатывает ссылки на новые версии?

Для ньюкамеров, которые первым делом скачают и потыкают. А не ради метания бисера перед антиметапрогерами.

без примеров использования

Примеров в дистрибутиве вагон и маленькая тележка. Открываете и тыкаете.

про более раннее время

У Нас такого времени не было. Домашний телефон был, но подключать его было не к чему. А первым мобильником с инетом обзавелись раньше ПК. Но и на нём инетом не пользовались (кроме этого случая), вплоть до того, как в универ поступили.

Сможешь без инструкции, или нет?

А шо там сложного? Нажимай да дуй ©

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

Это работает не так. РАБотники хронически не высыпаются, поэтому дудлят кофе, чтобы поддерживать сколь-либо приемлемую работоспособность. В итоге впадают в наркоманию и без кофе уже вообще работать не могут. Мы высыпаемся хорошо, посему в этом не нуждаемся ;)

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

Только ухаживать для этого должны специалисты, ну или прошаренные пауеръюзеры. А не самоуверенные СПВ, которые при совке чинили телевизоры кулаком (потому что там реально припой плохой был и это помогало), и сейчас продолжают это делать. А потом, мол, не сами сломали, это лошадка попрыгала.

У меня некоторым вещам уже лет 10, хотя гарантированный срок службы заявлен 5 лет.

А у Нас пылесос советский, и что? :P И мобильнику уже 13 лет, хотя срок поддержки у него всего три года. И нет, в инструкции у них об уходе и не пахнет.

Когда-то давно занимался сборкой компов в частном порядке и как-то таких косяков не было

Руки из правильного места, бывает.

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

Только трахаться при этом со всякими no-code системами вместо чего-то приличного, ага. Это как программисты VBA, ABAP, SalesForce и 1С, только ещё хуже.

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

Как раз нет, это обиженные пердуны так молодёжь называют.

Так школьники постарше называют школьников помладше. Старики ничего не знают о словечках, что в школе в ходу.

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

инструкции для эксплуатирующего персонала

Бывает, когда-то и принципиальные схемы в комплекте клали. Сейчас техдокументацию предпочитают только СЦ выдавать.

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

А ещё там написано пользоваться в защитных очках и полном здравии, чтобы с производителя ответственность снять, да? :3

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

это лошадка попрыгала.

Фигассе…

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

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

А как же! Ещё там написано не включать девайс в состоянии лакагольного опьянения и под воздействием лекарств.

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

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

У Вас странные стереотипы о стариках, они в Одноглазниках всяких сидят уже давно.

Одноглазники для циклопов, сынов Геи и Урана. А людские старпёры обитают на срач-формуах, где прикидываются школьниками и программистами.

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

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

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

где прикидываются школьниками и программистами

Особенно когда совок обсуждают, ага. Давеча читали тред на mybb2.ru…

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

Ну так один хрен для обслуживающего персонала же. Юзверям её неохотно показывают. Многие вовсе за бесплатно не выдают, ну и к утечкам копирастию проявляют.

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

Мой опыт говорит о том, что инструкции зачастую есть но вот как раз таки пользователи ее тупо не хотят читать.

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

Особенно когда совок обсуждают, ага. Давеча читали тред на mybb2.ru…

К сожалению, товарищ, не в курсе, что за mybb2.ru и какого рода старпёры там обитают. Могу сказать точно, что стариканов полно среди школотронв. Всё как в школе. Но если бабы с возрастом сваливают на кухню, то мужики продолжают участвовать в решении вселенских дел. Разумеется, свершаемых на диванах и форумах.

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

Но если бабы с возрастом сваливают на кухню

Э-э-э, а как же старушки на лавочке?

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

Для пользователя естественно. Причем они бывают очень подробными и на почти все случаи жизни.

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

Но это не отменяет нужности инструкций и первого и второго типа

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

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

Ну а чего бы и нет, благодатная тема, опять же можно как-то в духе бунтарства и альтернативы влиять на язык, можно писать книги, можно ездить по конференциям. А С++ уже зрелый язык, даже может перезрелый, короче наверно просто человек пробует что-то новое и держит руку на пульсе :)

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

куда пропал

Человек делом занимается, а Вы опять троллите.

Да и вообще, не место этому поделию на ЛОРе. Адепты уже и так в Метапрог.Онлайн сидят, а перед остальными смысла нет бисер метать.

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

Человек делом занимается, а Вы опять троллите.

И вы кстати тоже опять.

Да и вообще, не место этому поделию на ЛОРе.

Да ладно, серьезно что ли :). Какие глубокие и своевременные выводы.

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

Смотрю на предыдущие темы про метапрог с недоумением.

Razk
()
Последнее исправление: Razk (всего исправлений: 3)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.