LINUX.ORG.RU

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

 , ,


1

2

Рейтинг пользователей тем про Метапрог или практический пример применения визульного программирования

Пока Метапрог не готов, продемонстрирую практическое применение LabVIEW. Скачать программу-демонстратор можно тут:

http://e2tilsgo5s44hqmlwb4epwrjnh7ynvsckj2tl5duwdqbxg67chqpelad.onion/file/9b...

Для перехода по ссылке нужен Tor Browser, для просмотра кода примера - LabVIEW начиная с 2013.

На данном графике - количество комментариев самых активных зарегистрированных пользователей в темах про Метапрог на момент 29.06.19 04:47:37

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

Всего две маленькие диаграмки на Лабвью. Для начала надо распарсить сообщения из сохраненных веб-страниц. Да, страницы пришлось сохранять вручную, так как в Лабвью проблемы с HTTPS (и многими другими сторонними библиотеками). На данный момент проще было сохранить страницы вручную через браузер, чем самостоятельно сделать лабвьюшную реализацию TLS.

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

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

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

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

Почти все подписано, специально повключал названия лабвьюшных функций.

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

FAQ

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

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

Примеры

Предыдущие см. в прошлых темах

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

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

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

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

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

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

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

Наконец-то нормально работают циклы!

https://pastebin.com/1duyPBMB

Это та самая диаграмма со старого скрина:

https://i.postimg.cc/65N2KMQz/image.png

Теперь тупиковые ветки (nk_end и «малювання SDL») тоже остаются в теле цикла. Теперь осталось внедрить тот же механизм управления тупиковыми ветками для условий (if, switch) и можно будет приниматься за разработку Метапрога на «самом себе».

Донат

Bitcoin:1AYoK2TScSpD5bhf67mv9AxHDJ2RidRvjD



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

Да хоть сто тредов, тебе-то что? Не нравится - уходи. Хватит флудить. Хотя все равно после 20 страниц должно стать чище - флуди побольше, чтобы поскорее исчезнуть из темы:)

metaprog
() автор топика
Ответ на: комментарий от anonymous
#include <stdio.h>
#include <wchar.h>
#include <wctype.h>
#include <locale.h>

int main() {
	wchar_t str[] = L"привет, мир!";
	wchar_t *rep = L"пм";
	
	setlocale(LC_ALL, "");
	
	for(;*rep;rep++) {
		wchar_t *c = wcsrchr(str, *rep);
		if(c) *c = towupper(*c);
	}
	
	wprintf(L"%ls\n", str);
}
~$ ./a.out 
Привет, Мир!
Deleted
()
Ответ на: комментарий от anonymous

Ну надо знать разницы между байтами большой и маленькой буквы во всех UTF-8 яыках или находить сишные функции. Если есть нужный инклюд - подкинь.

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

Это ж сраный текст. Где иконы и стрелы?

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

Ну надо знать разницы между байтами большой и маленькой буквы во всех UTF-8 яыках или находить сишные функции. Если есть нужный инклюд - подкинь.

Ахахаха.

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

Ну вот хоть одна здравая мысль.
А вы знаете - прислушаюсь к вашему совету.

Владимир

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

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

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

(напоминаю, весит 50 мб)

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

kostyarin_ ★★
()
Ответ на: комментарий от i-rinat

50к рублей, тогда будем думать. Выгодное предложение!

Чтобы выиграть 1000?

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

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

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

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

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

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

500! Работать на меня большая честь!

Ну что же ты сразу не сказал? Это ведь совсем другое дело! Тогда 500кк.

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

А, точно. А то я вместо * поставил &.

Я все больше понимаю Линуса. Один раз выучил Си - и больше ничего особо-то учить не надо. rebforce на лурке пишет, что я чего-то там не знаю, но это в основном брехня. Даже если я чего-то не знал (например, что такое колбек или оператор ->), то теперь-то уже знаю:)

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

Один раз выучил Си - и больше ничего особо-то учить не надо.

Скриптоту надо. А так, да.

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

На чем ты эти графики сделал и за сколько времени?

Python 3, Beautiful Soup 4, Cairo. В результате выплёвывается все 52 недели года, так что приходится ещё ручками обрезать в GIMP’е и легенду дописать. Честно говоря, доделывать код для динамического кадрирования лениво.

Где-то около трёх с половиной часов ушло на всё.

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

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

ну ты понял

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

Почему не жнуплот?

Потому что хочу Cairo.

Не лень же было.

Зато попробовал использовать Cairo. Такие задачки — отличный способ учиться пользоваться инструментами.

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

Ну я на свой рейтинг чуть больше часа потратил (смотри по времени сообщений):

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

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

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

Это ли не доказательство превохсодства графического программирования над текстовыми языками? А ведь Python считается быстрым для прототипирования!

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

Если б ЛОР не был HTTPS или в Лабвью были библиотеки для TLS - смог бы и вытащить страницы напрямую, а не парсить сохраненные.

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

Это ли не доказательство превохсодства графического программирования над текстовыми языками? А ведь Python считается быстрым для прототипирования!

Опустим обычную газету в серную кислоту, а журнал ТВ-Парк в дистиллированную воду (с)

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

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

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

Мой график, конечно, попроще, но тоже сделан за разумное время.

Я тут открыл octave и сделал график sin(t) за примерно минуту.

на Лабвью нет парсеров HTML, HTTPS и прочих библиотек

Бедный лабвью. Как же вы под ним живёте?

а также то, что половина времени ушла

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

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

Чем-то флаг Кении напоминает. Мне нравится.

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

До конца треда, если он будет активным (а он будет, не сомневайся), либо когда он станет вялым.

cluge
()

Пишите ребятки, пишите, своих сил не жалейте.

anarcho-amoral
()
Ответ на: комментарий от i-rinat

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

Для красоты.

Бедный лабвью. Как же вы под ним живёте?

Думаешь почему я Метапрог делаю? Чтобы получить то, чего мне не хватает в Лабвью, не переходя на текстовое программирование.

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