LINUX.ORG.RU

Метапрог-прототип, версия 6 + будильник на Метапроге

 , ,


1

3

Наконец-то настало время для первой прикладной программы на Метапроге - будильника. Чтобы правильно его собрать, нужна последняя версия прототипа Метапрога. Архив включает в себя исходные диагарммы на LabVIEW и скомпилированные exe, которые можно запустить под Wine на линуксе, читайте инструкции из архива с названием вашего языка. Скачать:

https://www24.zippyshare.com/v/xEn1RKAG/file.html

Основная причина выпуска 6 версии - исправление бага с жесткими последовательностями, ведущими к началу цикла. Это исправление вряд ли окончательное, но для трансляции диагарммы будильника сойдет. Если после транслятора из 5 версии прототипа Метапрога сообщение о времени будильника выводилось в цикле каждый раз, то тут - только один раз, в самом начале:

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

Также проект может похвастаться тем, что функцию проигрывания звукового файла в своей основе сделал insw, успешно разобравшись с функционалом прототипа Метапрога. Я лишь добавил дебаги с условными разветвлениями (аналог if...else) и жесткими последовательностями. В получаемом из транслятора сишном коде это выглядит как множество вложенных друг в друга if...else. Проигрывание звука:

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

Сишная трансляция диаграммы будильника (не забудьте sound.wav!):

https://pastebin.com/YAd4J1SN

Почему будильник на константах? С графическим вводом значений пока проблемы: всплыли новые баги с «умными массивами». Исправление будет в будущих версиях. Но в этой версии исправлено несколько других багов: теперь не должно быть проблем с заданием типа массива и индикаторы прогресса закрываются сами после завершения операции.

Переворот массива

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

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

https://postimg.cc/RJMKXyTB

Если все же что-то неясно - не стесняйтесь спрашивать. Полученный код:

https://pastebin.com/UsY0TZvc

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

Метапрог-прототип, версия 5



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

Алсо, @metaprog, позволю себе в твою честь переиначить стихи того товарища. Точно тебе говорю, вы с ним похожи.

Оригинал: http://okante.narod.ru/stories/svvsdv.html

Орфография и авторская рифма бережно сохранена.

Спускался вечер на опушку леса,
И старый свин с лицом повесы
Залез зачем-то в Интернет,
Растрачивать очередную горсть монет.

Но там же строго и неторопливо
О метапроге правду нес хороший
                          разработчик прихотливо
И вот в telnet последнее словцо заведено
По трубам с током уж бежит скорей оно
И тут же свин увидел в форуме его...

Сначала он не понял ничего
Затем пытался суть постигнуть, осознать
Но вот беда, не так его учили поступать
А научили защищаться от всего что может
Устав свинного кодинга не соблюдать.

И говорит свин своим: “Посмотрите! У языка того
Исходный код начертан на лабвью!
В нем нету описания нет либ и нет инклюда
Поэтому я никогда не стану кушать сие блюдо”

И сморщил пятячок, такой вот он сучок
Но в этом ли беда, беда не в этом
А в том, что свин был признан светом Интернета
И начался бедлам и шум
“Шпалоукладчик” “неуч“
Повсюду замелькали: вновь мир в хаосе погряз
Как и не вылезал от слов святых и вечных
И вновь от текста никого не спас
Тот тихий шепот, что перекричит
Любой громоподобный глас. Увы.

Наш разработчик слова не сказав
Вернулся к разработке, ведь она
— его предназначенье.
liksys ★★★★
()
Последнее исправление: liksys (всего исправлений: 2)
Ответ на: комментарий от liksys

Давай уточним: ты собрался отреверсить vi-файлы с помощью стандартной библиотеки метапрога?

Нет. Я про чтение метапроговских данных.

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

Только статистика твоих сообщений резко позеленела начиная с первого сообщения в темах про Метапрог. С чего бы это?

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

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

Здрасьте https://zone.ni.com/reference/en-XX/help/371361R-01/glang/reverse_string/

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

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

Где там примеры реально работающих программ? У меня - прямо в шапках тем выставлено то, что удалось сделать на текущей версии прототипа, а там копаться надобно...

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

Нет. Я про чтение метапроговских данных.

Хорошо, а я уж думал, что ты совсем поехал.

С чего бы это?

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

Так что форумами я обычно не пользуюсь, а если и пользуюсь, то только чтобы пофлудить.

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

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

Вообще-то, задача состояла в развороте юникодной строки, о чем тебе неоднократно говорили. Этого ты так и не сделал.

Где там примеры реально работающих программ?

Зачем примеры-то? Там такой концепт - закачаешься! И автор умеет генерировать тонны полуграмотного текста описаний, а у тебя это как раз слабая сторона.

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

Вообще-то, задача состояла в развороте юникодной строки, о чем тебе неоднократно говорили. Этого ты так и не сделал.

Ты б рассказал мне для начала как в UTF-8 определяется количество байт на символ.

Зачем примеры-то? Там такой концепт - закачаешься! И автор умеет генерировать тонны полуграмотного текста описаний, а у тебя это как раз слабая сторона.

Лонгриды на тему программирования без практики и диаграмм на Лабвью/Метапроге скучны.

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

Ты б рассказал мне для начала как в UTF-8 определяется количество байт на символ.

Гугл в помощь. Тема разжевана и пережевана тысячу раз. Или плати $100 в час, с радостью тебя поконсультирую.

Лонгриды на тему программирования без практики и диаграмм на Лабвью/Метапроге скучны.

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

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

Гугл в помощь. Тема разжевана и пережевана тысячу раз

Пока что мне и без того есть чем заняться.

Или плати $100 в час, с радостью тебя поконсультирую.

Давай так: консультируешь и при этом скидываешь мне по 100 долларов в часна биткоин-кошелек.

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

Я осилил многое, в том числе то, что тебе и не снилось. После этого талмуды по ООП и мануалы по питону для меня смертельно скучны.

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

Кошмар какой. Прочитав первое предложение твоего сообщения, я подумал, что ты предлагаешь ему связаться с Александреску, и с сделал о_О.

Потом прочитал дальше))

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

Я осилил многое, в том числе то, что тебе и не снилось.

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

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

Давай так: консультируешь и при этом скидываешь мне по 100 долларов в часна биткоин-кошелек.

Чот я в этой схеме не вижу никакой для себя выгоды.

Я осилил многое, в том числе то, что тебе и не снилось.

Ты многого обо мне не знаешь :) Но не будем. И - да, хотелось бы увидеть примеры. Просим, маэстро! Поразите нас!

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

За еду решил работать? Демпингуешь небось?

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

Вы Метапрог и Лабвью знаете еще меньше, чем я питон.

Шуруп, забитый молотком, надёжнее, чем гвоздь, закрученный отвёрткой!

Есть ли еще причины идти на такие жертвы кроме лицензии и необходимости поставить Лабвью?

Очень напоминает набросы местных виндотроллей, типа «нормальные выбирают софт по качеству, поехавшие по лицензии».

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

За $99.99 готов тебе написать пример на C.

Я бы не демпинговал. Там куча нюансов. Всякие эмоджи – это ерунда. Настоящий треш начнется, когда начнешь переворачивать строчки состоящие из смеси rtl и ltr слов, возможно, с невалидно расставленными символами направления текста. И, возможно, дичайший треш будет с арабской вязью, там, вроде, понятие отдельно стоящего символа сильно условное и не все закорючки могут идти в другом порядке.

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

Ну эт самое, я же не говорил, что я руками с нуля буду писать, libicu никто не запрещал использовать, вон ТС же заюзал sdl.

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

Наконец-то удалось первернуть массив из байтов…

Надо давать ссылку на условие задачи. Я правильно понимаю что эта диаграмма реализует эту сишную строчку? for (i=0;i<n;++i) out[i]=in[n-1-i];

(не, я вообще-то не читаю эти треды, не думайте обо мне чего такого :) )

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

Ты лучше расскажи, как ты циклотрон для обогащения урана решил приспособить. Прорыв в инженерии же!

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

https://ru.wikipedia.org/wiki/Циклотронный_резонанс

Циклотронный резонанс зависит от массы иона, у 235 и 238 изотопов урана она разная. Уран для бомбы, сброшенной на Хиросиму, обогащали при помощи электромагнитного масс-анализатора https://vakuumtest.ru/mass-spektrometriya/ и его «из металлолома» при очень большом желании сделать можно.

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

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

За $99.99 готов тебе написать пример на C.

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

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

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

Пока что сохраню интригу:)

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

Очень напоминает набросы местных виндотроллей, типа «нормальные выбирают софт по качеству, поехавшие по лицензии».

К сожалению, вменяемых опенсорсных альтернатив Лабвью нет (если не считать сам Метапрог).

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

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

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

Циклотронный резонанс зависит от массы иона, у 235 и 238 изотопов урана она разная.

Ты не в курсе, какая связь между циклотроном и циклотронным резонансом? Как ты этим разделять изотопы собрался?

С каждым новым сообщением физика становится всё более и более альтернативной.

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

Ты не в курсе, какая связь между циклотроном и циклотронным резонансом?

Много общих букв, а значит это почти одно и то же!

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

Циклотрон неодинаково разгоняет ионы разных масс, потом их можно разделить на электромагнитном сепараторе, что тут непонятного для питониста?

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

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

Ты хотя бы статью в википедии про циклотрон прочитал, что ли.

потом их можно разделить на электромагнитном сепараторе

Ты название «электромагнитный сепаратор» только сам придумал что ли? Потому что это название уже занято за машинами, которые мало пригодны к разделению изотопов урана.

что тут непонятного для питониста?

О как заговорил! :-D

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

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

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

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

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

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

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

Образование - социальный конструкт любителей текста.

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

(не, я вообще-то не читаю эти треды, не думайте обо мне чего такого :) )

Отмазывайся теперь, поздняк метаться, теперь ты один из нас :)))))))))

Ну да, ещё кроме строчки и printf в конце, вроде бы по заверению автора, результат оно выводит в консоль (а входной массив всё ещё константный).

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

не думаю что это будет медленнее чистого Си

Судя по Вашим комментариям Вы думать на обсуждаемую тему физически не способны.

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

Меньше чем Вы знаете питон что либо знать невозможно.

в Лабвью приходится немало так костылить

О да, там целая пачка костылей обмазанных говнокодом, но СУВТ там лишние.

Попробуйте перечитать что Вам писали об архитектуре. Ой, это же опять работа с текстом…

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

Правильно подумал. Потому, что по ссылке язык Д, а не D. :)

И таки да, что-то общее есть, ибо

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

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

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

Судя по тому как это чудо решало квадратное уравнение, рискну предположить что оно достигло невиданных высот в современном искусстве!

Ну там клизма из краски, потом это все э… распыляется на холст - получается диаграмма метапрога. Но что то пошло не так, и ТС пытается продавать свои творения через ЛОР за донаты.

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

Все ещё хуже, как минимум у пары степени к.ф.-м.н. или выше, защищённые аспиранты и тэпэ.

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

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

в каком то коммерческом симуляторе моделировал течение нефти.

В этом и проблема! А если бы он считал на метапроге, то показал бы им диаграмму и ни у кого никаких вопросов бы не возникло!

какие уравнения решались

КВАДРАТНЫЕ!

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

он хотел сказать грибоэлектронный.

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

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

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

А как же - «Вы все бомжи, не можете заплатить 3к$, что бы потестить метапрог» ?

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

после такого щедрого доната

Ты должен понимать, резкое, 100 кратное увеличение бюджета невозможно.

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

Вообще, если кроме шуток и стёба: сама идея графического программирования - вероятно очень хорошая и является будущим

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

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

В каком виде есть реализации идеи графического программирования? Из годных я знаю только Лабвью. Да, оно существует (в близком к современному виде) еще со времен винды 98. А не взлетело из-за закрытости и копирастии с ценами на лицензии в тысячи баксов.

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

Ну и за что мне тут должно быть стыдно?

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

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

Смотри. Открываю мануал по питону. Начинаю читать и ужасаюсь объему информации в чисто текстовом виде, которую надо выучить. Потом открываю Лабвью, смотрю на его стандартную библиотеку с меню из функций - и стены текста нет, почти ничего учить не надо.

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

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

Извращенная фантазия антиметапрогеров не знает границ.

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