LINUX.ORG.RU

Метапрог-прототип, версия 11 + бенчмарк

 , ,


1

3

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

Метапрог-прототип 13 + LOR Browser

Скачать (читать файл с названием своего языка из архива!):

https://www111.zippyshare.com/v/Nq5mH4Sa/file.html

Версия 11 содержит оптимизации транслятора и исправления в Метапрог онлайн. В остальном различий с описанием 10 версии нет.

Версия 10 содержит несколько хотфиксов для транслятора диаграмм и онлайн-функционала. В остальном различий в сравнении с описанием 9 версии нет.

Версия 9 содержит хотфикс: в 8 версии были проблемы со скачиванием проектов через Метапрог онлайн. В остальном различий в сравнении с описанием 8 версии нет.

В текущей версии прототипа наконец-то исправлены проблемы с отображением справки в скомпилированном ехе (рекомендую изучить справочную систему) и реализованы условные схождения. Это означает, что на нем можно делать уже по-настоящему сложную логику. Например, бенчмарк, предложенный в прошлых темах. Другие уже сделали множество реализаций на разных текстовых языках программирования, я сделал реализацию на Лабвью - а теперь это возможно и на Метапроге. Исходная задача на бенчмарк: Метапрог-прототип, версия 6 + будильник на Метапроге (комментарий)

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

https://www32.zippyshare.com/v/JlUIhEAn/file.html или https://drive.google.com/file/d/1lu1RVqqXEVGgZbviCfwrxFMhdDgvo6LT/view

Доступ к Метапрог-диаграммам можно получить через Метапрог онлайн (репозиторий «бенчмарк ЛОР»), открыть - в прототипе Метапрога.

Каждый бенчмарк проходит 10 повторений, во время каждого выводится 4 числа:

Номер повторения (0-9).

Время (миллисекунды) генерации 100000 строк длиной 100 байт и подсчета их хешей.

Время (миллисекунды) генерации 1000 строк по 20 байт и подсчета их хешей.

Время (миллисекунды) поиска вхождний по хешам.

В случае каждого нахождения вхождения в консоль/stdout выводятся подстрока и строка.

В тестах в случае совпадения хешей в консоль/stdout выводится строка «мяу». Кстати, совпадения хешей случаются даже с 20-символьными подстроками, хотя самих вхождений нет (идет дополнительная проверка).

Условное схождение присутствует, например, в функции генерации случайной английской буквы (A-Z_a-z.bmp, между условием и «+»). После слияния веток с данными (или жесткими последовательностями выполнения) от противоположных условий дальнейшие блоки выполняются в обеих случаях.

Есть разные функции генерации случайного числа, и они совершенно разные по скорости. Если использовать randombytes_uniform из библиотеки libsodium - генерация случайных строк работает в сотни раз медленнее, чем rand. Но функция randombytes_uniform из специальной криптографической библиотеки дает «по-настоящему» случайные числа, в отличие от строк из псевдослучайных чисел (rand), которые повторяются даже между разными запусками программы. Есть тесты, использующие разные функции для случайного числа при генерации 100000 строк по 100 байт. Генерация 1000 строк по 20 байт погоды не делает, тут во всех тестах randombytes_uniform. Уверен, что rand сократило б время генерации 1000 строк по 20 байт до нуля миллисекунд.

Подсчет хешей функцией nk_murmur_hash во всех случаях занимает ничтожную часть времени.

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

В Метапрог-диагармме подфункции/поддиагарммы могут быть представлены в виде ссылок на файлы (серо-зеленая дискетка при наведении мышью) или же быть частично или полностью отвязанными от файла на диске и полностью находиться в теле файла диагарммы (в таком случае цвет дискетки зависит от наличия и соответствия файлу на диске - путь к нему все же хранится в кластере/структуре диаграммы). Иногда это удобно, чтобы, например, сделать локальный форк подфункции. Например, чтобы использовать rand вместо randombytes_uniform, достаточно было форкнуть диаграмму основного бенчмарка и сделать отвязку от файлов на диске цепочки поддиаграмм, отвечающих за формирование массива случайных строк вплоть до функции генерации псевдослучайного числа. В итоге получились локальные форки функций без необходимости сохранять их в новые файлы. Подобным образом можно управлять и типами, такими как структура/выбор (struct/union), структура условного выбора типа (СУВТ, прямых аналогов в Си нет), пронумерованный список (enum) итд.

Бонус: будильник с проверкой введенных значений (сишная трансляция в файле alarm.c в архиве с бенчмарком, Метапрог-диагарммы в Метапрог онлайн, проект «будильник»).

Из недоделанного: схождения по переключателю (switch) корректно работают только в случае схождения всех без исключения случаев, в том числе «інше»/«другое» (default).

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

В планах: циклы по структурам, переключатели (switch) по многотиповому типу, возможно макросы.

Предыдущая версия: Метапрог-прототип, версия 7 + графические диалоги на Метапроге



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

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

оно попроще

Ну если написать сервис для анонимного мониторинга ответов на анонимные комментарии, то допустим. Мы ещё летом собирались. Для борд есть куклоскрипт, который автоматом это делает, а тут? Может, ЛОРовские анонимы давно что-то подобное сделали, но не делятся? Есть, конечно, RSS-лента уведомлений пользователя anonymous, но она ж шумная донельзя, надо буквально каждую минуту обновлять, чтобы ничего не потерять, и вылавливать из неё «свои» весьма нетривиально.

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

Вот только как раз Линукса это не касается, ага. Просто Линусу в районе 3.20 взбрендило, что пора бы мажорную версию инкрементнуть, а то давно не инкрементили. Ну и в районе 4.20 по аналогии так же сделали. А серьёзных поломок совместимости с 3-й версии никаких не было.

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

Мне это прям напомнило как на ныне мертвом AG.ru модеры на 1 апреля открыли свою мини имиджборду. Ох сколько потом им пришлось разгребать.

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

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

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

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

Метапрогу, конечно, подобное пока не светит, как и прочим нашлёпкам, представляющим абстракции над C. Бенчмарк в этом случае нужен для оценки того, насколько из-за метапроговских абстракций ухудшается (и ухудшается ли!) производительность по сравнению с кодом, написанным человеком непосредственно на C.

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

менять, не меняя оригинал

Именно поэтому такой подход и является копипастом. Вам, как и многим быдлокодерам, видимо, чужд принцип DRY (Don’t Repeat Yourself). Функция должна быть именно общей, даже если в неё нужно внести незначительные нюансы для разных случаев. Потому как если в эту функцию впоследствии надо будет внести изменения, затрагивающие все случаи её использования — намного удобнее сделать это один раз, чем выискивать и править во всех программах случаи использования этой функции в изменённом виде.

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

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

Говнарская музыка, видите ли — Ълитная, не для всех, под неё уши разрабатывать надо, как анус ;-)

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

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

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

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

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

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

Вообще-то процесс разработки как раз из отладки в основном и состоит. Реализация программы (написание, ну или сборка, в случае Метапрога) — это лишь около 10% от жизненного цикла разработки. Остальное, даже если отбросить проектирование и внедрение — тестирование, отладка, починка багов. Сначала написать что-то — а потом надо долго и муторно «вылизывать», чтобы поведение кода соответствовало ожидаемому, а также непредвиденным реальным условиям.

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

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

enum {
  SUNDAY: 7,
  MONDAY: 1,
  TUESDAY: 2,
  WEDNESDAY: 3,
  THURSDAY: 4,
  FRIDAY: 5,
  SATURDAY: 5,
}

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

Транслятор устроен достаточно просто

Это пока он сырой и мало что умеет ;-)

соответствие сишного кода ассемблеру

Это с сильными оптимизациями-то? ну-ну. Могут так поковеркать код, что мать родная не узнает!

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

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

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

Вы таки сомневаетесь в том, что Microsoft его скоро испортит?

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

Я ПОСМОТРЕЛ И НИЧЕРТА НЕ ПОНЯЛ

Сколько раз ведь говорилось, что картинки не интерактивные — неужели необучаемым дворникам сложно это запомнить? Картинки и не могут быть понятными. На них даже нельзя проводок подсветить и приходится отслеживать его глазами.

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

Не получается, самодокументируемый код — это опасный миф.

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

Костыли для перегона UML в код и обратно не считаются.

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

низкая скорость ввода

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

Она априори у всех гораздо выше чем мышетыкство, если человек понимает что делает. Исключение - работа с графикой. Даже при верстке текста визивиг редакторы сливают LaTeX-у.

Ну, спорьте тогда с экономической мощью Китая и Японии ;-)

А, их мощщь это следствие иероглифов?! Однако… а что же USA больше полувека была впереди планеты всей?

Первопроходцам всегда тяжело.

ТС ни разу не первопроходец.

А какая разница? Вот какое имеет значение, что СУВТ — NIH-реализация GVariant, если GVariant не визуальный?

СУВТ это ерунда. Скажем метапрог-массивы это костыльный std::vector без сборки мусора. СУВТ+кластеры это костыльный и сильно кастрированный ООП. И т.д., ТС ничего нового в смысле абстракций не придумал, а то что он придумал это сильно ухудшенная реализация известных вещей, причем он в силу дилетантизма об этом даже не догадывается.

Ну и разве хамство началось не в ответ на лучи поноса?

Нет.

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

ТС выкатил это адЪ пригодный только для хеллоувордлдов.

Даже чтобы хеллоуворд написать придется заморочиться. Интуитивно понятный интерфейс же. И ставить жирный Labview для хеллоувордов ну такое себе. ТС тот еще извращенец.

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

и это работало

Что, и комментарии да всякие ассемблерные вставки не портило?

если человек понимает что делает

Но целевая аудитория-то не понимает.

а что же USA больше полувека была впереди планеты всей

Гордо отсиживались в сторонке, пока остальные нарастили бицепсы и полезли драться.

ТС ни разу не первопроходец

Свободный клон LabVIEW уже делали? MyOpenLab кривой.

std::vector без сборки мусора

А на хрена она там?

сильно ухудшенная реализация известных вещей

Это проблемы тех, кто о них знает. По аналогии с вышеупомянутым, Word стал манной небесной для тех, кто не владеет TeX и не знает его мощи, но для TeX-ников он как был трешем и содомией, так и остаётся. А пипл хавает.

Нет.

Ладно, придётся и первый тред читать :/

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

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

Ну и вот что нагуглено :

https://codeforces.com/blog/entry/4710

https://stackoverflow.com/questions/19411742/what-is-the-default-hash-function-used-in-c-stdunordered-map

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

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

изобретать и фонтанировать ахинеей

Так говорите, будто что-то плохое. Поттеринг вон успешный человек.

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

Сфига это? Метапрог давным-давно работает без LabVIEW.

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

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

Чтобы Дупапрог поставить нужен рантайм лабвью

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

Чтобы жгутики потягать на диаграмках нужен Лабвью

Вут? Жгутики на метапроговских диаграммах таскаются в самом Метапроге.

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

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

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

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

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

Что, и комментарии да всякие ассемблерные вставки не портило?

А почему оно должно было их портить? И с каких пор метапрог умеет ассемблерные вставки?

Но целевая аудитория-то не понимает.

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

Гордо отсиживались в сторонке, пока остальные нарастили бицепсы и полезли драться.

Перед этим они вылезли на первое место, наваляв любителям иероглифов. В т.ч. и экономически задавили. Так что бонусы от иероглифов тут непричем, у Вас не выходит в троллинг.

Свободный клон LabVIEW уже делали? MyOpenLab кривой.

А ТC его сделал?

А на хрена она там?

Что бы у будильника память не текла и бенчмарк не сливал питону по памяти в 15 раз например?

Это проблемы тех, кто о них знает.

Нет, это проблемы тех кто о них не знает. ТСа например.

По аналогии…

У приличных людей аналогия не является аргументом или доказательством. Есть огромная разница между криво сверстанным текстом (который все же можно читать) и неработающей программой (которая вообще не работает).

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

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

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

уран жареньем на сковороде обогащает

Украинский гений и не на такое способен. Про нас уже байки слагают.

В цеху было тихо, не смотря на обилие людей. Слышно было только потрескивание лампы дневного света, да перешептывание некоторых научных работников. Люди напряженно ждали. Несколько часов назад, минстець объявил, что с востока огненным шаром плюхнулась, предположительно, ядерная бомба. К счастью, взрыва не последовало и данный объект был захвачен бойцами батальона Торнадо, МВД Украины. Теперь работники ХЗТМ, наспех перепрофилированого в НИИ Полураспадов и Полураспилов, отложили решетки и готовились к новому заданию. Им следовало изучить странный объект, улучшить его характеристики минимум на 30% и восстановить справедливость, порушенную Будапештским меморандумом. Старшие специалисты негромко строили теории о том, как правильно "плутон или плутоний", нужен ли он там и как его можно использовать в хозяйстве для отопления. Младшие сотрудники перекрашивали фуфайки в белый цвет, дабы походить на настоящих ученых.

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

-Та абажды ты! Трымай, трымай, укОтится падла москальская! Уот так! Слава Украине! - донеслись крики снаружи. Двери цеха со скрипом отворились и свет залил потьму цеха. Комбат Онищенко с побратимами вкатили блестящую шароебину, на которой уже было гвоздем нацарапано несколько надписей ПТН ПНХ и герб Украины. Дело в том, что нанесение подобных надписей предписывает устав, для минимизации Зрад и очистки от кацапской нечисти. Помимо этих оберегов на шароебине красовалась огромная цифра 8, нарисованная по личному приказу комбата.

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

Вокруг объекта тут же собрались люди в белоснежных тулупах. Старший из них, Олександр Мыколович, ветеран этого завода, разрушал военку Радянского Союза изнутри еще 40 лет назад, когда п****л инструменты и намеренно гнал брак, выражая свой протест против угнетения Украинского народа. Надо признать, что Олександр не растерял своей квалификации и поныне.

-Надо проделать технологическое отверстие - выразил свою научную теорию Олександр Мыколович. -Тащите дрель и зубило!

Было видно, как волновался старичок-боровичок, готовясь вскрыть адское устройство. Крупные капли пота стекали по суровому, морщинистому лицу, оставляя серые кляксы на тулупе. Олександр прикрыл глаза, что-то прошептал, собираясь с духом и громко произнес "Ну, Слава Украине, поехали!". Спустя 10 минут, при помощи крепких слов и пресвятой Бандеровской матери, обшивка поддалась и удалось проделать дырку, диаметром около 20см. Изнутри понесло резким запахом аммиака и каких-то нечистот.

-Тююю, ну теперь понятно, чаго оно не вибухнуло. Плутон весь протух. Что взять с этих монголов? - сделал экспертное заключение другой работник. Его звали Тарас Кузьмич Пистоненко, в прошлом известный проктолог. Он обладал не только непререкаемым авторитетом среди других работников, но еще и золотыми руками. Дело в том, что своего первого москаля-сокамерника он задушил в 93-ем, когда сидел за растрату и воровство. С тех пор, он научился чувствовать микроны на ощупь и не оставлять отпечатков пальцев, что считалось полезным навыком среди работников завода. В его трудовой книжке значилось "Инжинер-измерительной техники", а заканчивал он университет им. Тараса Шевченко, по факультету "Альтернативные виды массажа среди казачьих полков Украины"

Олександр Мыколович, поморщился и заглянул внутрь.

-Ну, як бачишь чего? - вопрошали окружающие

-Нэ, нэ бачу. Тарас, иди ты пощупай.

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

-Расплавилось похоже. Мягкое оно какое-то. Похоже на уран.

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

Сергей Александрович Волков, герой Российской Федерации и командир космической миссии Союз-ТМА24М нехотя плыл через отсеки МКС к гарнитуре, где ЦУП исходился на говно и обрывал провода требуя отчета. Разговор не предвещал ничего хорошего. Солнечная активность подняла атмосферу на несколько сот метров и конечная точка входа в атмосферу у капсулы смазалась. Она не сгорев до конца, плюхнулась в района Харькова. Конечно, его вины в этом не было, но виновным скорее всего все равно назначат его.

-Алло, Сергей Александрович! Какого х**, дорогой вы мой! Вы понимаете, что это залет, это скандал! Вы понимаете, что сброс контейнера с биологическими отходами на территорию суверенного государства грозит нам штрафами за загрязнение экологии!? Вы понимаете, что вашей ссаниной и вашим говном нам теперь все экологи будут в морду тыкать!?

Конечно же Сергей Александрович понимал.

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

Спасибо! Я че то такое предполагал, про рехэш при большом числе коллизий интересно.

Теперь хоть буду знать как правильно называется то что я навелосипедил - хэш таблица с цепочечной адресацией;-)

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

Ну давай посчитаем грубо 10 тем по 40 страниц. На странице стандарт 50 комментов. Пусть в среднем коменте 40 символов. ((50*40)*10) * 40 = 800000 символов. Война и мир 2966547 символов. Если коряво посчитал просьба сильно не бить. У меня по «матану» тройка.

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

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

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

А почему оно должно было их портить?

А как их засунуть в UML-диаграмму?

Ровно до тех пор пока не напишет несколько программ

Пускай так. Всё равно будут с теплом вспоминать Метапрог как первый опыт в программировании. Впрочем, фантастика это, что-то Мы не видали на ОКИ, чтобы те, кто лепили игры в конструкторах, спрыгивали на текстовые ЯП.

ВСЕ его поделия сливали решениям на текстовых ЯП по выразительности и времени реализации

Так надо сравнивать по времени реализации конкретным программистом. Мы вот, знаете ли, на текстовых языках крайне медленно пишем, вон в теме про МЕРТВОПРОГ удивлялись, как на него можно было потратить целый месяц. И это при том, что имеем богатый многолетний опыт с JS, а уж без опыта…

Перед этим они вылезли на первое место

Не перед этим, а в результате.

А ТC его сделал?

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

Что бы у будильника память не текла и бенчмарк не сливал питону по памяти в 15 раз например?

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

Нет, это проблемы тех кто о них не знает

Меньше знаешь — крепче спишь.

аналогия не является аргументом

Так её тут и нет, это просто указание на то, что TeX упоминался выше в дискуссии.

криво сверстанным текстом (который все же можно читать)

Ой не факт…

(которая вообще не работает)

Ага, типичный хомячиный лепет — «всё сломалось, ничего не работает».

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

Дык это это еще с ранних тем обозначение его творения. Непомню за чьим авторством название(liksys вроде). Програмирование через пятую точку тобишь.

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

Вы хотите, чтобы Мы со злости ещё и дупапрог написали? Нечего тут языки путать! Вы бы ещё C и C++ путали! Срам-то какой!

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

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

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

в среднем коменте 40 символов

Маловато.

А ещё учтите гипертекст.

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

Послепрог. Или Постапрог.

Будет ласковый дождь, Будет запах земли, Будет пенье стрижей От зари до зари.

И ни птица, ни ива Слезы не прольет, Если сгинет с Земли Человеческий род.

И весна: и весна Встретит новый рассвет, Не заметив, Что нас уже нет…

И остался только Метапрог.

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

А как их засунуть в UML-диаграмму?

Текстом?

Впрочем, фантастика это, что-то Мы не видали на ОКИ, чтобы те, кто лепили игры в конструкторах, спрыгивали на текстовые ЯП.

Я знаю людей которые с юнити спрыгнули на С#. Знаю людей которые с ВП в блендере/саломее спрыгнули на питон. И хочу заметить, эти вещи писали НЕ дилетанты - поэтому они работали даже в руках у дилетантов.

Так надо сравнивать по времени реализации конкретным программистом.

Я знаю что у меня в дупопроге получится на порядок дольше. Просто потому что мышкой дольше возить чем писать текст.

Не перед этим, а в результате.

В результате чего? Использования иероглифов? Не уклоняйтесь от темы.

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

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

А уже разобрались, почему течёт-то?

Потому что ручная сборка мусора. Оно еще в корку улетает по этому же поводу.

Ой не факт…

Факт.

Ага, типичный хомячиный лепет — «всё сломалось, ничего не работает».

Именно так и будет в любом проекте чуть сложнее хэллоуворлда - потому что:

  1. за счет косяков в концепте дупопрог сломается и не выдаст С-шный код.

  2. Его целевая аудитория, дилетанты, при возникновении таких проблем ничего кроме лепета выдать не смогут.

Как тепло они потом будут вспоминать этот свой опыт!

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

Забыл сказать что тебе метапрог напишет что никакого дупапрога он не знает. Будь готов к таким страшным аргументам. Все таки какие унылые у ТС приемы ведения беседы.

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

Дык и никакого Антонола не существует - судя по всему ТСу надо обратиться к психиатру по поводу своих галлюцинаций;-)

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

надо обратиться к психиатру по поводу своих галлюцинаций

Это да. Но боюсь за врачей. Вдруг не справятся. «Больной у вас мания преследования, вам везде мерещатся антиметапрогеры.»

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

Текстом?

Ну и какая это после такого диаграмма, если в ней здоровые куски хрен пойми чего? Опять пресловутый «C в кружочках»…

с юнити спрыгнули на С#

Речь вообще не о полупрограммируемых движках типа Unity и UE, там всякие Construct и прочие RPGMaker, в которых чисто мышкотыканье и на выходе какая-то адовая каша — вообще не программисты делали. И такие игры в итоге высокие места на конкурсе заняли, потому что люди не пердолились с программированием, а больше внимания уделяли контенту и в целом проработке игры, такие пирожки.

мышкой дольше возить чем писать текст

Ну опытные мышевозы, у которых палец к мышке прирос, могут поспорить…

В результате чего? Использования иероглифов?

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

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

А шо вы хотели от C? Причём некоторые его проблемы Метапрог устраняет.

Потому что ручная сборка мусора

Но ведь ничего лучше не придумали. GC — зло, а эти ваши скоупы и move-семантика приводят к лютому пердолингу, особенно если переменную таки надо сохранить при выходе из скоупа.

Факт.

Факт. Вам, видимо, не встречались реально кривые документы, где часть текста вылезла за страницу, или за плавающую картинку заползла, или ещё как.

Именно так и будет

Не будет, потому что чтобы программа вообще ничего не делала — это надо умудриться.

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

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

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

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

Я думаю, что пиратов оно, наоборот, прикармливает.

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

Ну и какая это после такого диаграмма, если в ней здоровые куски хрен пойми чего? Опять пресловутый «C в кружочках»…

Здоровые куски асм-вставок? А зачем они?

Речь вообще не о полупрограммируемых движках

Я написал кроме юнити еще блендер и саломею.

Ну опытные мышевозы, у которых палец к мышке прирос, могут поспорить…

Не могут.

В результате того, что иероглифные сверхдержавы поцапались и от них остались рожки да ножки

Так и алфавитные державы между собой рубились - мама не горюй… и кстати Япония взяла Китай и пр. Азию к ногтю без особых проблем и потерь. Китай на тот момент вообще не являлся серьезной военной силой.

А шо вы хотели от C? Причём некоторые его проблемы Метапрог устраняет.

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

Но ведь ничего лучше не придумали.

Вылезайте из криокамеры.

Факт. Вам, видимо, не встречались реально кривые документы, где часть текста вылезла за страницу, или за плавающую картинку заползла, или ещё как.

Встречались и встречаются регулярно. Тем не менее их еще можно читать.

Не будет, потому что чтобы программа вообще ничего не делала — это надо умудриться.

Будет постоянно. Потому что:

  1. дилетанты

  2. дупопрог

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