LINUX.ORG.RU

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

 , ,


0

3

В новой версии серьезно доработана система типов. Теперь сложные типы (структуры (аналог struct/union), пронумерованные списки (аналог enum), структуры условного выбора типа) можно сохранять на диск как отдельный файл и использовать ссылки на них в диаграммах и других типах.

Скачать:

https://www38.zippyshare.com/v/KUuZC9Ie/file.html

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

1. Саму структуру (struct/union), в которой на месте массива - указатель на его первый элемент.

2. Вторую структуру (struct) подобного вида:

struct {
char * pointer;
size_t size;
char dynamic; //динамический массив?
} metaprog_array_structure_123;

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

Предыдущая тема:

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



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

Жиденько.

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

шизофазия какая-то.

anonymous
()

В профилях пользователей лора теперь появилась статистика. И твоя как-то круто просела с сентября. Неужели школа важнее метапрога?

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

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

hobbit ★★★★★
()

Не совсем понял траблу с массивами, но можно как то так.

struct arr {
	int *p;
	int size;	
};

int *return_arr() {
	struct arr *info = malloc(sizeof(struct arr) + (sizeof(int) * 4));
	info->p = (int*)(((char*)info)+sizeof(struct arr));
	info->size = 4;

	return info->p;
}

int main() {
	int *arr = return_arr();
	arr[1] = 10;

	struct arr *info = (struct arr*)(((char*)arr)-sizeof(struct arr));
	printf("return_arr() size == %d\n", info->size);
}

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

И без malloc.

struct arr {
	int *p;
	int size;	
};

int *return_arr() {
	static char data[sizeof(struct arr) + (sizeof(int) * 4)];
	struct arr *info = (struct arr*)data;
	info->p = (int*)(((char*)info)+sizeof(struct arr));
	info->size = 4;

	return info->p;
}

int main() {
	int *arr = return_arr();
	arr[1] = 10;

	struct arr *info = (struct arr*)(((char*)arr)-sizeof(struct arr));
	printf("return_arr() size == %d\n", info->size);
}

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

У этого есть веб-сайт или страничка ВКонтакте?

У него есть полтора поехавших «разработчика» :D

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

Есть репозиторий (и другие репы с разными вещичками) в своей СКВ, что бы это глянуть нужно поставить метапрог-онлайн.

Еще я записывал видео где показано как что поставить. https://www.youtube.com/watch?v=EcQMgUAm0DE&feature=youtu.be

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

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

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

Прикольно, а для меня она прям ещё из прошлой жизни.

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

Нету ничего из перечисленного. Гитхаб автор не любит, ибо пилит свою СКВ и видимо, будет делать под неё хостинг. Я ему настоятельно рекомендовал занять домен metaprog.org, но пока он думал, нафига это надо, и не лучше ли всё распространять через TOR, домен увели IT-петросяны и сделали на нём сайт-пародию.

hobbit ★★★★★
()

Сделай реверс кода в диаграммы. Хотя бы загрузку xml который генерит libclang.

Уже станет понятно чего не хватает.

Реверснёшь код линукс и будешь тестить генерацию (ну и пантоваться на ЛОРе).

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

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

Сайт оборжака. Если там настоящие цитаты — вин вдвойне.

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

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

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

Совершенно верно.

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

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

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

Я бы все же посоветовал автору сделать гит-зеркало и заливать на гитхаб или любой другой популярный ресурс.

Не поверишь, уже советовали и не один раз.

Иначе творение мало кто оценит.

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

  1. Для запуска, просмотра и редактирования диаграмм - LabVIEW начиная с 2013.
  1. Если не удалось достать линуксовую версию LabVIEW - виртуальная машина с Windows начиная с ХР с кириллической локализацией (иначе будут проблемы с кодировкой символов).
hobbit ★★★★★
()
Ответ на: комментарий от hobbit

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

Я над этим работаю так сказать...

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

Также почитай список факторов риска, который я составлял несколько тем назад по итогам высказываний автора. Некоторые пункты устарели (например, 4й – последний раз, когда я видел сгенерированный код, предупреждениями он уже не сыпал, а на смену GTK у него пришёл Nuklear), но большинство остаётся в силе. Особенно печалит приверженность автора бинарным форматам хранения диаграмм, каковые форматы он, к тому же, не хочет внятно описывать.

Там же чуть ниже — ответы автора на мою критику.

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

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

Можно будет взять какой нибудь WBXML, и никаких трабл же.

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

Котечка, ты зачем переименовался?

anonymous
()

Видел на одной странице?

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

Есть репозиторий (и другие репы с разными вещичками) в своей СКВ, что бы это глянуть нужно поставить метапрог-онлайн.

Наркомания какая-то...

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

Не поверишь, уже советовали и не один раз.

А что ему мешает?

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

Это цитаты автора?

Да, все находятся на лоре без проблем.

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

Она же ЕМНИП проприетарная и бабла стоит?

Совершенно верно. Автору намекали, что выбор средств разработки, мягко говоря, неудачен. Особенно, когда основная система разработчика — линукс.

Но он стоит на своём. Говорит, что тот же кодогенератор из диаграмм в сишный код на текстовом языке грохнешься писать, а когда он сделан на самих диаграммах — всё просто и изящно. Это не дословная цитата, а компиляция из разных высказываний автора, но смысл, я, кажется, передал верно.

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

В профилях пользователей лора теперь появилась статистика.

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

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

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

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

домен увели IT-петросяны и сделали на нём сайт-пародию

LOL

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

Скорее, IT-правдорубы.

Твой комментарий обижает настоящих правдорубов.

Там ведь показана вся суть этой «разработки»

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

Ну и что? Автор может поумнеть и выучиться, а «правдорубы», которые умеют только гадить (и главное, готовы на это тратить время и силы) — никогда. Такие же «правдорубы» портят стены подъездов.

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

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

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

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

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

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

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