LINUX.ORG.RU

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

 , , ,


2

3

Не нравится - проходите мимо. Нравится - помогайте проекту.

Дополнительно:

Структуры условного выбора типа

Примеры

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

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

Структура

Структура GtkWidgetClass с кучей членов-указателей на функции:

https://i.postimg.cc/bwTrb1r1/2.png

Слева - члены структуры, справа - подсказки к выходам структуры, всплывшие при наведение мышью. Там можно прочитать имена членов структуры. Здесь я буду брать прототипы для функций, вызываемых по перечисленным событиям (фишка gtk+).

Да, большая и на экран не вмещается. После релиза эта проблема будет решаться перемещением видового экрана по диаграмме и зумом (как в играх-стратегиях или при просмотре фоток под зумом).

Она же в текстовом виде: https://pastebin.com/TeTsSMQz



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

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

Зачем? Забудем XML, это я уже туплю на ночь глядя. Возьмем свой формат. В нём идет: число блоков n. После этого на каждой из n строк идёт Имя_блока;Другие_метаданные;Связанный_блок1;Связанный_блок2;...

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

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

Донат сделаю, когда увижу исходники метапрога на метапроге, бинарник этого самого метапрога, свой гит и бд (полностью на метапроге). Я обещаю в таком случае закинуть вам на счёт $20 и прекратить троллинг.

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

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

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

Может и будет. Вы этого с нетерпнием ждете? Может донат сделаете?

Донат — это инвестиция в стоящий проект, с основателями, которые понимают, что делают? или милостыня убогому? или донат — в смысле «пончик»?

Если вы любитель славянизмов, можете пояснить?

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

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

Теперь ещё и своя база данных вместе с релизом! Чувствую, с таким подходом релиза мы в этом столетии не дождёмся.

И я всё ещё жду ответа на вопрос, почему написание своих git/github/diff/patch и т.д. автор считает более простым делом, чем однократное написание парсера JSON или даже XML (JSON хватит на самом деле).

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

Смотри, я открыл metaprog и перешел в верхнюю правую часть, мне сейчас нужно загрузить ТОЛЬКО ее, а элементов во всем коде 100500. Если у меня XML я должен читать весь файл и искать ноду-контейнер с «ЛеваяВерхняяЧасть», ну типо того, а если у меня бинарный файл, то весь код делиться на сетку, и сетка тоже на сетку делиться... Ну и я могу по сетке ограничить загрузку схем, так как у меня в заголовке написано что range правой верхней части от 34324324 до 99994343, короче мне вспомнилось https://ru.wikipedia.org/wiki/Sparse_Voxel_Octree может прочтя поймешь о чем я!

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

На кой черт мне париться с текстовым форматом? Это и сериализация, и десериализация... Бинарный формат - другое дело! Структуру подключил к функции «десериализировать структуру» - и готово! Как в Лабвью:

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

И никаких парсеров не писать - все готово!

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

Автор судя по всему таким образом пытается заработать. Предлагаю собрать хотя бы какую-то интересную автору сумму и выплатить её после релиза (с обозначенными выше условиями). Я впринципе готов поднять ставку до $25, а если суммарно до $100 дотянем, думаю, релиз будет уже завтра.

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

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

Да! И быстрее находятся элементы!

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

Вставлять в середину файла блоки это как то неоч будет.

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

Это индекс называется. Он и не у всех бинарных форматов есть. См. opendoc xml. Все распаковывается, грузится в память и индексируется. А про что вы говорите — это уже настоящая БД. берите sqlite — не ошибетесь.

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

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

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

Свои утилиты по-любому делать придется. Существующие текстовые git/github/diff/patch не годятся для графических диаграмм.

На свой репозиторий с графическими кодами меня вдохновляет: https://powdertoy.co.uk/ (скрин https://media.moddb.com/cache/images/games/1/19/18759/thumb_620x2000/The_Powd...)

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

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

Можно, конечно, «покурить» исходнички sqlite — благо он хорошо структурирован — и выцепить оттуда реализацию персистентного btree с поддержкой транзакций.

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

Текстовый формат - это

  1. Большая совместимость с окружающим миром
  2. Читаемость
  3. Близость к идеям Open-Source

Этого вполне достаточно.

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

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

Откуда такие утверждения? Вы хотя бы попробовали? Я вот именно в git и храню свои Latex-документы, часть которых генерится в диаграммы.

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

Своя база данных. С нуля.

Всё. Я окончательно понял, что это был троллинг. (Хотя по меркам ЛОРа, надо признать, весьма тонкий.)

Расходимся, нас обманули.

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

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

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

Своя база данных. С нуля.

Конечно! для невежд это ж плевое дело. Всего-то надо поуверенней сказать.

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

Хорошо, пускай вместо меня зарабатывает Майкрософт на гитхабе.

Вы не видите объективных причин почему в Метапроге проще бинарные файлы: потому что легче (прямая (де)сериализация текста в нужный тип без парсеров).

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

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

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

Скучно спорить об одном и том же, когда вам привели уже 3 аргумента, а вы не признаете. что парсер проще, чем своя ОС с нуля. Давайте вы ещё пару цитат выдадите и по домам?

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

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

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

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

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

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

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

Это просто легкая шиза, для дела полезно!

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

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

ОС? Я про ОС сказал как о далекой перспективе, и то если и будет - то в виде дистра линукса.

Парсеры будут (например вывода Castxml), но не к собственным файлам Метапрога, у которых формат определен и к ним уже будут ключи.

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

Не, вы правда застоялись. Скучновато с вами, шизиками. Good day!

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

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

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

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

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

Владимир

Это называется метадата база /ни в коем случае SQL/.
Звучит как-то все так, что разработка метадата базы это что-то типа - муха пролетела.
На словах все просто ...

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

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

Владимир

Говорить о том, что «будет и метадата база» как вроде «А что тут сложного?» это чистой воды - ТРОЛИНГ.

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

Владимир

Sorry.
Правильнее - МегаТроллинг.

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

Опять Лабвью крашнулось. Что я на нем делаю такого ужасного?:) Правда хорошо что там есть автосохранение файлов, прямо как в офисных пакетах!

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

от публикации ссылки до вердикта «говно», прошло 9 минут..

«Половину книжки для меня — большая редкость. Я обычно начинаю с середины, и убеждаюсь в узости мышления автора через 1-2 главы». (c) anonimous

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

(c) anonimous

Хорош был, чертяка. Говорил БД не нужны и все можно в текстовом файле сделать. Круг, кстати, так и не нарисовал

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

Владимир

Мне стыдно, что не распознал тролинг.

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

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

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