LINUX.ORG.RU

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

 , ,


0

3

Скачать (перед запуском читайте !Русский.txt или !Українська.txt):

https://www71.zippyshare.com/v/dNcHIgzD/file.html

Новая версия принесла несколько новых фич интерфейса пользователя. Добавлено выделение прямоугольником для вырезания и копирования части диаграммы (в прошлой версии было только копирование и вставка одного блока по щелчку колесом мыши). После копирования куска диаграммы (с проводками с данными и жесткими последовательностями) его можно вставить кликом колесом мыши на пустом месте диаграммы. Есть план реализовать в будущий версиях также создание подфункций из выделенного куска - аналог Create SubVI из LabVIEW (так была сделана немалая часть функций в прототипе Метапрога).

Однако самая интересная фича новой версии - сериализация в base64 координат блока на диаграмме с цепочкой функций. Этому есть как минимум два возможных применения. Можно «ткнуть пальцем» на нужный блок (меню блоки - ткнуть пальцем на блок). Будет сгенерирована строка такого вида:

metaprog_debug:AAAAAAAAAAAAAAAHAAAAAFBUSDAAAAAEAAAAAAAAAAAAAAAAAAAAAwAAAAdNUEwgMi4wAAAAB0xJQ0VOU0UAAAAU4fPk6Ov87ejqIO3gIOfg7+jy4PUAAAAK0+rw4L/t8fzq4AAAABXh8+To6/zt6Oog7eAg5+Dv8O7x4PUAAAAH0PPx8ero6VBUSDEAAAAxcmVsIAAr0LHRg9C00LjQu9GM0L3QuNC6INC90LAg0LfQsNC/0LjRgtCw0YUubXBiZBNiCtNfkRABAAAAAwAAAAdNUEwgMi4wAAAAB0xJQ0VOU0UAAAAT9rPr7vfo8evu4ujpIOSz4Ovu4wAAAArT6vDgv+3x/OrgAAAAFPbl6+736PHr5e3t++kg5Ojg6+7jAAAAB9Dz8fHq6OlQVEgxAAAANXJlbCAAA25rYwAq0YbRltC70L7Rh9C40YHQu9C+0LLQuNC5INC00ZbQsNC70L7Qsy5tcGJkP/rfBI32qgEAAAADAAAAB01QTCAyLjAAAAAHTElDRU5TRQAAABDy5erx8u7i6Okg5LPg6+7jAAAACtPq8OC/7fH86uAAAAAQ8uXq8fLu4vvpIOTo4Ovu4wAAAAfQ8/Hx6ujpUFRIMQAAAC9yZWwgAANua2MAJNGC0LXQutGB0YLQvtCy0LjQuSDQtNGW0LDQu9C+0LMubXBiZFbEp7cIT2gBAAAAAwAAAAdNUEwgMi4wAAAAB0xJQ0VOU0UAAAAV5+Dv8/HqIOKz6u3gIE51a2xlYXIrAAAACtPq8OC/7fH86uAAAAAU5+Dv8/HqIO7q7eAgTnVrbGVhcisAAAAH0PPx8ero6VBUSDAAAAAWAAEAAgNua2MNbmtjIGluaXQubXBiZFQc/+kgVZgBAAAAAwAAAAdNUEwgMi4wAAAAB0xJQ0VOU0UAAAAO+PDo9PIg7fPq6+Xg8CsAAAAK0+rw4L/t8fzq4AAAAA748Oj08iDt8+rr5eDwKwAAAAfQ8/Hx6ujpUFRIMQAAADpyZWwgAANua2MAL9GW0L3RltGG0ZbQsNC70ZbQt9Cw0YbRltGPINC90YPQutC70LXQsNGAKy5tcGJkaxMcpv873AEAAAAAUFRIMAAAAAQAAAAAdcftGC2ZsAE=:metaprog_debug

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

Вместо тысячи слов:

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

Там будет явно показан конечный блок, на который «ткнули пальцем», либо подфункция, по которой до него следует добираться.

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

https://postimg.cc/hQVLBcHp

Дебаг-строку выводит оранжевый блок.

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

Для компиляции надо скачать https://sourceforge.net/projects/tinyfiledialogs/

Распаковать в папке с Си-файлом так, чтобы работал соответствующий инклюд.

Код:

https://pastebin.com/5NW30tQx

Введя нужное число, закрываете окошко. После ввода часа и минуты в консоль будет выведено время срабатывания. Теперь будильником можно пользоваться и для повседневных нужд (звук пронзительный, хорошо слышный, sound.wav больше не нужен), однако завершать его работу надо еще через диспетчер задач или Ctrl+C в консоли, когда не идет звук. Также нет проверки введенных чисел, если введете не то число - будильник никогда не сработает.

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

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

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



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

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

Небось про какие-то психические патологии. Булгакова я читал только Роковые яйца - довольно интересно (кстати, советую), но всякую дичь типа Мастера и Маргариты читать уже не хочется. Лучше про технику посмотреть:

https://www.youtube.com/watch?v=ClX9QtTSxqU

https://www.youtube.com/watch?v=vQGOxqmNgKg

https://www.youtube.com/watch?v=LDzU5189g88

https://www.youtube.com/watch?v=wWX7gOXDg1o

И подумать: а что же еще такого можно изобрести?

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

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

Да, и их надо будет повторить, собрав из вызовов сишных функций.

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

В это время шла работа над прототипом, ведь

гуй метапрога, который мы видели на видео, предоставленных ТСом, достаточно сложный.

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

Блин, плохо будет если что-то с ним случилось. Хотелось бы убедить его присоединиться к команде метапрогеров. Тут бы его знания по Си и компиляторам очень бы пригодились.

Кстати, постараюсь с выпуском 8 версии собрать тот самый бенчмарк, на котором сравнивали разные ЯП.

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

Бездарности мусор говно выкатывай

И зачем ты меня сюда скастовал?

Царя я зауважал

Я и говорю — стокгольмский синдром.

Там же, кстати, он ругает и Метапрог. Но это только потому что он не разобрался

Надежды юношей питают.

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

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

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

свичи по многотиповому типу (не путать с СУВТ)

Эм, и чем же многотиповый тип отличается от СУВТ?

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

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

В той ссылке что я скинул там так оно и реализовано вроде, как конкурентный цикл с условными событиями и условными колбеками. Правда обычно такие решения получаются довольно сильно связанными(монолитными) и запутанными.

Эх, было бы когда этим заняться… Самая большая беда в том, что на микроконтроллеры пока нет API на Метапроге (талмуды со спецификациями читать мне некогда), а железки от NI, понимающие Лабвью, неадекватно дорогие и по-своему ограниченные.

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

Так-то думаю распбери пи пощупать, но без готового Метапрога мне там делать нечего. Скачать Debian GNU/Linux с торрента и достать лабвьюшные модули для кодинга под распбери мне не удалось, а покупать за 500 баксов не комильфо.

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

Заводить несколько контроллеров на одной плате? Да ну, неужели нельзя решить все программно?

Можно об этом и ссылка была, но это конкурентное выполнение потока программы, не «истинножелезнопараллельное».

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

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

графический способ ввода алгоритма,

Это не абстракция.

представление его в виде потоков данных и оследовательностей исполнения,

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

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

Каких именно «сишных асбстракций»?! Впрочем вопрос то риторический, Вам 1005000 раз говорили что абстракции не привязаны к ЯП…

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

Потому что не от большого ума ты несешь истеричный бред. Особенно про СУВТ, путая их с PyObject или еще черт знает чем.

Ладно, разговор окончен.

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

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

Хе, там и без этого столько граблей разложено… например я что то считаю (из констант) и кладу в массив/структуру, а потом еще раз что то другое считаю (тоже из констант) и кладу ТУДА ЖЕ. Согласно ТС-у это вполне корректное действо. Если я пишу в тексте, я знаю что у меня будет там лежать (что последним положил то и будет), но у ТС-а это неопределенное поведение - какой из фрагментов будет выполнен последним неясно. А ведь расчеты могут идти не только на основе констант, там че то из констант вычислится, прокрутится здоровый кусок диаграммы, запишет в массив. А независимый кусок диаграммы тоже запишет в тот же массив. Упс…

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

Впрочем это все уже неважно…

Коллеги, я тут пересмотрел вчера «Собачье сердце» - е-мае, каким идиотом я себя сейчас ощущаю и как мне стыдно! Это не передать словами… Вы можете себе представить картину - Филлип Филлипович учит Шарикова держать скальпель и накладывать швы?! Я не могу, а ведь и этим мы тут с вами занимаемся, и ТС реагирует ровно как Шариков «давай донаты или иди в жопу!»(с). Я лично в этом участвовать не буду больше, последний его типичный комментарий говорит сам за себя.

Ну вам, коли охота - удачи…

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

Спасибо за содержательный ответ. Ситуация стала яснее.

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

сделанной на Лабвью.

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

К счастью, у меня хватило ума стать атеистом

Ну это все к теме метапрога не относится никак. Вера личное дело каждого.

Царя я зауважал тогда, когда познакомился с его взглядами.

Он всех несогласных с его мнением поливает известной субстанцией. Плохой кандидат в уважаемые люди.

Булгакова я читал только Роковые яйца дичь типа Мастера и Маргариты читать уже не хочется

Не читал но осуждаю. Да я тебе и не предлагал читать. Фильм посмотреть. 136 мин

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

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

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

Будет ерунда. Корректная сишная трансляция точно не получится.

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

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

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

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

В это время шла работа над прототипом, ведь

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

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

Данные начинают течь из блоков, которые выполняются. … Так же работает принцип Data flow в Лабвью,

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

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

И зачем ты меня сюда скастовал?

Это про наш давний спор про бинарные/текстовые форматы.

Я и говорю — стокгольмский синдром.

Да ну, неужели нельзя уважать человека за его взгляды?

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

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

Кстати, если мне не изменяет память, на содомлян аргумент подействовал, и дочери остались нетронутыми

Однако своего сына (Иисуса) бог таки позволил убить.

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

Я протестировал эту ситуацию. Блок просто не оттранслируется, если он один. Так-то я не предусматривал подобные ситуации в трансляторе прототипа - это будет уже в «настоящем» Метапроге.

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

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

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

Можно об этом и ссылка была, но это конкурентное выполнение потока программы, не «истинножелезнопараллельное».

А как оно было, скажем, на Intel 80386 и вообще одноядерниках? Потоки ж были там еще тогда, что позволило Линусу сходу сделать многозадачную ОС.

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

Ответить, как обычно, нечего. Слив засчитан.

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

Если я пишу в тексте, я знаю что у меня будет там лежать (что последним положил то и будет), но у ТС-а это неопределенное поведение - какой из фрагментов будет выполнен последним неясно

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

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

Точно так же, как и сейчас. Шедулер переключает контекст между потоками, выделяя им нужное процессорное время.

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

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

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

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

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

Никаких последствий печальнее того, что тут куча неосиляторов поставить рантайм для запука прототипа Метапрога или скачать Debian GNU/Linux 2013 года через торрент, чтобы посмотреть его исходники. Это - существенный недостаток Лабвью, он - следствие идиотизма копирастов из NI, делающих все от них зависящее, чтобы их детище НЕ стало мейнстримом, особенно в опенсорсе. Но лучших вариантов нет.

Был, конечно, вариант писать на текстовом Си, но писать на нем сложный софт - не для слабонервных. Даже царь не осилил написать на текстовой сишке свой блог/сайт, хотя хотел. А более «высокоуровневая» текстовая скриптуха ничем не лучше Лабвью.

Он всех несогласных с его мнением поливает известной субстанцией. Плохой кандидат в уважаемые люди.

Я б тоже не стеснялся в выражениях, если б модераторы не свирепствовали. Мне просто лень бегать от банхаммера под анонимом и однодневками как царь.

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

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

Да. В прототипе Метапрога нормальной защиты от дурака нет. Сделай скидку на то, что это всего лишь прототип.

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

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

Можешь вливаться в разработку. Жду патчей.

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

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

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

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

На самом деле, сейчас метапроговские диаграммы работают в один поток. Сейчас как раз думаю как реалиховать параллельное выполнение ппараллельных веток. Есть ли что-то лучше потоков (threads)? Каков оверхед на их открытие?

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

Можешь вливаться в разработку.

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

Я тебе уже говорил, но ты поигнорил - выбрать текстовый ЯП для прототипа стоило бы хотя бы ради того, чтоб была возможность привлечь других людей для помощи. Хотя бы для code review… Но ты гордо отсек от себя такую прекрасную возможность. Приходится народу помогать тебе очень абстрактными советами, которые порой и не по делу, так как очень трудно понять, что из себя метапрог-прототип представляет…

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

Никаких последствий

Ну хозяин барин.

Debian GNU/Linux 2013 года через торрент, чтобы посмотреть его исходники.

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

Даже царь не осилил

Вот заладил ты с этим царем, еще раз говорю было бы на кого равняться.

Я б тоже не стеснялся в выражениях, если б модераторы не свирепствовали.

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

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

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

По сути главное в ОС - шедулер, так ведь? Он чисто софтовый или софтово-аппаратный? Чем «настоящий» десктопный процессор типа того же 80386 в этом плане лучше, скажем, ардуинного микроконтролера?

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

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

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

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

А по делу никто ничего сказть не может?

Я сейчас коллекционирую образцы глупости антиметапрогеров. Чего только стоят суждения Антонола про СУВТ, ну просто цирк на дроті.

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

Есть ли что-то лучше потоков (threads)?

Например, event loop’ы всякие, начиная от банального select, заканчивая более продвинутыми штуками типа libuv. Это другой подход, который можно объединять с тредами, а можно и в одном треде запускать. Разбирайся)

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

С 80386 в процессор впилили аппаратную переключалку контекста, которая сохраняла все состояние процессора в специальной структуре. Дело как-то не пошло из-за недостатков, например, при использовании этого механизма не сохраняются SIMD регистры, а также из-за того, что оно сохраняет полностью состояние процессора, то переключение контекста оказалось медленнее, чем софтовое, поэтому хардварную переключалку не стали использовать, а из AMD64 ее и вовсе выпилили (почти, она просто недоступна в длинном режиме).

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

То надо присматриваться к кроссплатформенным реализациям типа плюшек из SDL. Ладно, то чуточку позже.

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

А по делу никто ничего сказть не может?

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

Я сейчас коллекционирую образцы глупости антиметапрогеров. Чего только стоят суждения Антонола про СУВТ, ну просто цирк на дроті.

Не надо ничего коллекционировать, клеймить людей метапрогерами и тем более обижаться. Это только веселит всех собравшихся. И тебе это ничего не дает что самое главное.

«авторским правам»

Зачем нарушать закон(ну или священные права, называй как хочешь), если можно не нарушать. Блокнот и gcc бесплатны. Книгу С для чайников можно за месяц осилить. И тихонько пилить кодогенератор. А потом нормально перелезть на визуальное программирование без всяких лабвей и дебинов 2013 с торрента.

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

Это про наш давний спор про бинарные/текстовые форматы.

Аргументы уровня «ехал мусор через мусор сунул мусор мусор в мусор» этот спор точно не разрешат.

У тебя там, кстати, фигурировало слово «транспорт». Так вот. В качестве транспорта двоичные форматы действительно бывают предпочтительны. Например, при большом объёме данных. Видео там, телеметрия от многих датчиков. Видео вообще имеет слабо структурированный характер, поэтому текст там многого не даст.

К исходникам программ это даже близко не подходит. Исходники обычно достаточно компактны. А вот прозрачными и читаемы где угодно они должны быть. Тут двоичка в пролёте.

Серебряной пули нет.

Да ну, неужели нельзя уважать человека за его взгляды?

:)))))))))

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

Ой, я тут ниже прочитал:

Даже царь не осилил

Даже царь! О боги! Этот царь вообще что-нибудь для опенсорса сделал?

Нет ничего священнее своих детей

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

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

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

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

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

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

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

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

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

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

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

Если бы у Метапрога была такая презентация эти темы воспринимались бы намного серьезней. Но нет качайте Labwiev с торрентов. И я уже который раз задаю вопрос(и до меня его задавали) нафига? Я уж лучше тогда Visual Studio скачаю прости господи :).

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

Царь там вообще о другом толковал, просто @metaprog его интерпретирует на свой лад. На самом деле он всего лишь говорит о том, что ни один здравый человек сейчас не представляет данные как просто текст, сейчас это минимум структурированный текст (xml,csv,json,ron,yaml,etc), с обычным текстом сейчас работают только консольные утилиты полувековой давности и очень примитивные устройства с малым количеством ресурсов, где просто будет накладно иметь целый парсер для того чтобы разобрать структурированный текст. Все это я пишу конечно не для вас, а для @metaprog, вы то это и так понимаете.

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

Ну что сказать, ТС достаточно упертый может все же чего и выйдет интересного.

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

Ну с Антоном он пообщался не стесняясь в выражениях. - помощь, а то и минус сам Антон из этих тем.

Ну что сказать, ТС достаточно упертый может все же чего и выйдет интересного.

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

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

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

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