LINUX.ORG.RU

Metaprog: универсальная графическая среда программирования [в разработке] часть 6

 , , ,


2

3

FAQ

0. Где отсутствующие примеры и пункты FAQ? Как вообще читать эти темы?

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

10. Примеры выдают варнинги при компиляции (у кое-кого еще и сегфолтятся)

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

11. Как выглядит факториал в графическом представлении?

Metaprog: универсальная графическая среда программирования [в разработке] (комментарий)

(пока что на Лабвью)

Примеры

Находятся в прошлых темах. Компилировать исходники нужно так:

gcc ./test.c -o ./test $(pkg-config --cflags --libs gtk+-3.0)

Metaprog: универсальная графическая среда программирования [в разработке]

Metaprog: универсальная графическая среда программирования [в разработке] часть 2

Metaprog: универсальная графическая среда программирования [в разработке] часть 3

Metaprog: универсальная графическая среда программирования [в разработке] часть 4

Metaprog: универсальная графическая среда программирования [в разработке] часть 5

Прототип чата:

Metaprog: универсальная графическая среда программирования [в разработке] часть 6 (комментарий)

Показывалка языка локализации через seltocale (кстати, у кого что показывает?)

Metaprog: универсальная графическая среда программирования [в разработке] часть 6 (комментарий)

Прототип чата с прокруткой:

Metaprog: универсальная графическая среда программирования [в разработке] часть 6 (комментарий)



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

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

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

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

в D есть такие массивы, и слайсы (срезы массивов). массив знает свою длину и можно комбинировать вырезки.

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

А всё почему? Потому что обучаться выше своего уровня не желает ни автор, ни ты.

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

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

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

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

Что именно я не хочу изучать, скажи конкретно, или это как с утечками?

языки и подходы программирования, в которых утечки невозможны

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

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

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

ты даже их показать не можешь,

открою тебе секрет, петушок. Судя по коду афффтар в вызове, прибитом к сигналу, создает буфер для текста (gtk_text_buffer_new), потом использует его при добавлении в список и не делает ему g_object_unref. Ну и кто по твоему будет этот объект чистить? GCC за него мусор уберет? Понятно, что память будет вычещена при закрытии приложения, но каждый раз, при добавлении строки в список у этого метакренделя остается один бесхозный объект. Это и есть утечка.

// Это говно из примера не компилял, просто отформатировал и посмотрел

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

Вот это секреты ты открыл, там вроде бы еще гтк-апп не чистится, утечка!!! Еще stdin, stderr закрыть нужно бы, а то тож утечка!!!

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

Наконец ты признал, что код метапрога течет как нимфоманка на концерте любимой группы.

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

Я так и знал, что ты это скажешь, ты же днище. Но апп ОДИН в приложении, а буферов он создает столько, сколько будет «отправлено сообщений» в этом мегачатике. 100 сообщений - 100 буферов, которые потеряны, 1000, 10000... + учти, что этот буфер это объект с динамическим поведением, то есть он выделяет память под строку (это я тебе как днищу щас пытаюсь донести). то есть с условными 10000 буферами, ты просираешь еще и память под 10000 строк. Сколько средний мессадж? 20 символов? 200кило утечки (это в лучшем случае, потому что память никогда по 1 байту не релокейтится) на 10к мессаджей + 10000 объектов.

хотя если прибивать чЯтик каждый 5 минут, то утечка, вроде как и незаметна. А можно вообще free не пользовать, а только malloc, да ведь, днище?

котечко в очередной раз жидко обосрался.

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

Но апп ОДИН в приложении

Так сообщений вообще ноль, лол. Дальше не читал.

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

Опять котечку макнули в сцаки. Прям как в школе. Наверное плакать уже побежал к мамке под юбку.

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

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

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

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

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

дадада

Задрожал уже? %) Ну собсно это все что нужно знать об анонимных суперпрограммистах.

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

иди мамке расскажи, как ты и тут обсираешься. Может она тебя и с лора заберет, как и из школы.

anonymous
()

Вот был графический язык ДРАКОН, на котором даже писали ПО для Бурана. Не взлетел. Чем сабж лучше Дракона?

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

3. Почему не Дракон, MIT App Inventor, Unreal Blueprints?
Эти системы идеологически ближе к текстовому программированию, чем к визуальному. От того что куски текстового кода обведешь в рамочки, программирование не станет графическим. LabVIEW в этом плане куда основательнее, там вообще полный отрыв от текстового кодинга. Только блоки и их взаимосвязи.

4. Чем плохи LabVIEW или MyOpenLab?
LabVIEW пропиетарный, а MyOpenLab - хоть и опенсорсный, но какой-то недоделанный (пытался у себя запустить - выдало джава эксепшоны). Да-да, опенсорсный «клон» LabVIEW написанный на джаве! LabVIEW хотя бы на C++, а это все же меньшее зло. Обе эти системы даже не сделаны «сами на себе» в графике. Они даже не пытаются претендовать на универсальную замену всем текстовым языкам, хотя LabVIEW могло бы, если бы не тупость копирастов. Эти системы написаны на текстовых языках, их код (даже если б LabVIEW был опенсорсным) невозможно редактировать, ни разу не обращаясь к текстовым языкам. Метапрог изначально предполагает полный отрыв от текста и текстовых языков, за исключением Си как бэкенда. И то пользователям никогда не придется иметь дело с текстовым Си за исключением блоков сишных вставок (для особых случаев типа арифметических операций, ассемблерных вставок итп).

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

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

Кстати, безграмотный бред. Автор вообще и близко не понимает, о чем он пишет. Как говорят американы, it's wrong on so many levels Что не удивительно, ведь он так не любит печатное слово.

Пусть FAQ нарисует, может быть так он сможет корректно свои мысли изложить.

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

Вот текстовая форма, факториал на Scheme:

(define (factorial-classic n) (if (zero? n) 1 (* n (factorial-classic (- n 1)))))

Коротко и ясно. А скобки можно выровнять отступами. Как это будет выглядеть в LabVIEW? Неужто проще?

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

Ну как-то так https://www.youtube.com/watch?v=rChgk1Ak9FM

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

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

говорят его даже девочки в школе опускали

Можешь, пожалуйста, более развёрнуто это описать? Желательно, в форме рассказа. Спрашиваю для друга.

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

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

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

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

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

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

Потому-что это ты и писал, маня. Ты - очередной бот, очередная пустота, коей тут множество.

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

что за расто тред ещё? неужели где то курят траву в количествах превышающих сколько выкурили в этом треде?))))

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

Вот был графический язык ДРАКОН, на котором даже писали ПО для Бурана. Не взлетел. Чем сабж лучше Дракона?

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

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

На данном этапе.

Да вот у меня сложилось такое впечатление, что не только. Максимум что он обещал это что можно будет какие-то документы сгенерировать. Но я ведь совсем не про то, что можно сгенерировать, я про _авторское_ описание системы и языка.

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

так кто хочет тот прочитает 6 топиков флуда и всё поймёт

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

Да и С позволяет, только это все равно обвязки.

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

iluha16
()
Ответ на: Обновлённый список факторов риска от hobbit

Завидую способности проанализировать и как-то систематизировать то, что пишет автор.

Мне все то, что он пишет уж очень сильно напоминает классику:

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

И реакция автра на замечания ему по существу тоже похожа:

«Разве не растет [репа на дереве]? Неужели? Впрочем, ведь этого никто и не утверждал. Это просто образное выражение, специально образное выражение и только. Всякий мало-мальски разумный и догадливый читатель должен был сразу понять, что я подразумеваю здесь мальчика, который трясет ползучую часть этого растения.»

anonymous
()
Ответ на: Обновлённый список факторов риска от hobbit

кому лень читать весь репозиторий достаточно краткой цитаты

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

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

Владимир

Для меня интересна сама тема, а не конкретная разработка.
Тема - люкс.
Жаль, что в ней все сосредоточились на Метапрог.

Впрочем согласно правил форума это правильно.

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

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

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

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

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

Тема хорошая, но то, что автор придумывает — это порнография, к теме имеющая весьма отдаленное отношение.

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

собственно я даже фильмы смотрю таким образом `cd /mnt/big/torrents/Downloads; mplayer <film.name>` мне это проще чем тыкать в гуе тем более в том диске двухтерабайтном уже дохера просмотренных торрентов скопилось, файл менеджер скорее всего подвиснет если я им туда зайду.

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

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

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

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

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

ни разу не было случая что бы формат скачанный из торрент трекера не открылся mplayer'ом

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