LINUX.ORG.RU

Метапрог-прототип 42

 , , ,


1

3

Следующая версия:

Метапрог-прототип 43: начало переделки «на самом себе»

Скачать

https://mega.nz/file/SARWFB4D#5xZE8MxcEH1W-JvIcdm83ArSbQRdt_ueh86mohc96lQ

В 42 версии были исправлены еще несколько багов. Но она не была своевременно анонсирована на ЛОРе.

В 41 версии исправлены еще несколько багов транслятора.

В 40 версии исправлена трансляция условий в циклах в некоторых случаях.

В 39 версии исправлен баг упаковки, из-за которого не паковался транслятор.

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

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

В новой 36 версии прототипа Метапрога существенно улучшена скорость работы графического редактора. Те, кто раньше испытывали проблемы с медлительностью редактора (например, mertvoprog), приглашаются попробовать новую версию.

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

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

Заставить работать циклы по структурам пока не удалось (если не считать одноэлементных структур) - из-за новых метапрогеров пришлось вместо этого решить проблему скорости отрисовки. И она успешно решена, а циклы по структурам будут в следующих версиях.

По итогам первоапрельской шутки я все же увидел, что на ЛОРе все же есть ради кого оставаться.

Первоапрельская шутка:

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

Многие на этом форуме советовали мне бросить LabVIEW и я очень сожалею, что принял это решение только сейчас. Два года потрачены впустую! Особенно был прав liksys, долго пытавшийся меня вразумить: на python чего только не пишут, зачем заморачиваться с визуальным программированием, особенно с опорой на Си?

Что дальше? Скорее всего, буду по-настоящему учить текстовые ЯП. Какие посоветуете и по каким книгам?

С праздником!

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

Метапрог-прототип 34 + СУВТ по логическому типу



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

Но как мне это документировать? Когда я последний раз общался с Линусом (правда это был патч не в ядро, а в гит), он к коду ваще не придирался, типа всё ок, а вот документацию переписать меня заставил раза три.

Не силен в этих вопросах.
С @meataprog посоветуйся.

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

@metaprog, я занялся визуальным программированием, нарисовал кабачок и два арбуза - это я переписал ядро Linux. Как документировать такой патч?

Binkledum
()

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

liksys ★★★★
()

Что дальше? Скорее всего, буду по-настоящему учить текстовые ЯП. Какие посоветуете и по каким книгам?

Имхо для начала изучи tcl/tk и попробуй на нём переписать свой метапрог.

Ну или не на нём, а на java.

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

Будем надеяться, что это не из-за первого апреля.

Зря надеялся:)

Если модного хотите — питон.

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

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

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

Нет. Ты более адекватен, чем он. Глумление над новичками хуже чем безобидное заблуждение.

Спасибо за эту ремарку.

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

Где пароль?

Рановато мне еще валить в ЛОРа:)

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

–=== НЕ ВЕРИМ!!! ===–

В этом ты был прав:)

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

Пришло время подсчитать кол-во потраченных усилий

Все только-только начинается!

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

наоборот в ней наметились существенные успехи

СУВТ 4.0?

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

без типизации

Она там есть, просто динамическая

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

без типизации

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

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

Динамическая типизация для даунов.

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

Самое грустное, что на ЛОРе многие не понимают что такое дин. типизация и в чем её плюсы и минусы.

Для многих это проверка типов до запуска программы. Некоторые путают недостатки дин. типизации и недостатки языка.

Нашелся один из единиц регистрантов, который разъяснил Реализация компилируемого Python возможна? (комментарий)

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

что такое дин. типизация

Говно.

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

Самое грустное, что на ЛОРе многие не понимают что такое дин. типизация и в чем её плюсы и минусы.

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

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

Так ты не только в социальных науках сосёшь, но и в компьютерных/математических - идиот. Чем на ЛОРе сидеть, книжки бы умные почитал.

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

Говно будешь, пыхомакака запартная?

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

Само понятие «тип» в программировании устаревшее.

Нет, оно не устаревшее.
Просто последние пятьдесят лет ни кто толком не смог сформулировать понятие объекта.
В основном ВСЕ трактуют объект как а-ля C++ классы.
Ущербность от этого очень большая потому, что классы C++ это всего лишь один из вариантов представления архитектуры объектов.
Многие разработчики не понимают, что важны не только знания о типах объектов, но и метаданные о их семантике.

Владимир

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

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

Что такое семантика? Можешь объяснить в терминах Лабвью и/или Метапрога?

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

Само понятие «тип» в программировании устаревшее. Этот архаичный подход не выдерживает никакой критики

Отменить типизацию? Лишиться удобнейшего способа различать проводки с данными и вводы/выводы блоков? Именно типизация помогает мне в собирании схем (особенно сложных) и не дает подключить не тот проводок. С ужасом представляю себе как Лабвью и Метапроге исчезли типы и все проводки стали черной нетипизированной лапшой - собирать схемы стало б невыносимо тяжело.

Это как если б на 220 вольт сети, 19/12/5 вольт от зарядки, USB, HDMI, DVI, PS/2 и прочие провода был одинаковый разъем - ты б уже наверняка сжег телефон с ноутом. Где-то до 1950-60х для низковольтного проводного радио и бытовой электросети были одинаковые вилки, а на проводных радиоприемниках писали что-то типа «в электросеть не включать». Как думаешь, сколько примеников погорело?

Можно понять Сишник за это, ибо он близок к железу

Разве структуры и массивы есть на уровне железа?!

остальные ЯП просто наследуют эту архаику

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

просто трансформировать само понятие типа

Как?

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

Что такое семантика? Можешь объяснить в терминах Лабвью и/или Метапрога?

В простейшем смысле это набор свойств.
Самый, самый, … простецкий пример К примеру название переменной может иметь свойства:

  • какой язык использовался;
  • алиас;

Владимир

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

В простейшем смысле это набор свойств.

В развиваемой мной архитектуре объектов, поддержано понятие семантики.

Владимир

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

Вот, скажем, в Метапроге структура (по-лабвьюшному кластер), описывающая тип, выглядит так:

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

Название: многоязычный текст (массив из структур (из (самого текста) и (названия языка, например «Українська» и «Русский»))).

Надтип: путь к файлу высшего типа.

Есть цвет (да/нет)? Если нет - будет искать у высшего типа, если его нет - будет черный.

Цвет.

Обработчик типа (ошибочный тип, высший тип, число, поименованный список (енум), указатель, массив, СУВТ, многотиповой итд).

Это и есть семантика типа?

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

Вот, скажем, в Метапроге структура (по-лабвьюшному кластер), описывающая тип, выглядит так

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

Владимир

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

Вот когда разработаете и реализуете поддержку семантики объектов в целом

А как это? Можешь объяснить подоступнее? Желательно терминами Лабвью и/или Метапрога.

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

А как это? Можешь объяснить подоступнее? Желательно терминами Лабвью и/или Метапрога.

Хорошо, постараюсь доступнее …
К примеру имеются две переменные:
string Корова; и string Ящерища;

Без семантики это просто две переменные типа string и не более того …

Понятно?

Владимир

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

Теперь понятно. В Лабвью (и в Метапроге на данный момент) в таких случаях отличия нет и спутать проводки ОДИНАКОВОГО типа таки можно. Это те немногие случаи когда «просто типизация» не спасает.

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

Кстати, структуры разных типов это семантика или «простая типизация»?

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

А как это? Можешь объяснить подоступнее? Желательно терминами Лабвью и/или Метапрога.

В первых ваших тредах многое вам советовал, но увы …

Владимир

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

А как это? Можешь объяснить подоступнее? Желательно терминами Лабвью и/или Метапрога.

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

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

Теперь понятно. В Лабвью (и в Метапроге на данный момент) в таких случаях отличия нет и спутать проводки ОДИНАКОВОГО типа таки можно. Это те немногие случаи когда «просто типизация» не спасает.

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

Владимир

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

Теперь понятно. В Лабвью (и в Метапроге на данный момент) в таких случаях отличия нет и спутать проводки ОДИНАКОВОГО типа таки можно. Это те немногие случаи когда «просто типизация» не спасает.

Только не изобретайте некий СУВТ-75, а постарайтесь разработать свою архитектуру представления объектов.

Советую не КОСТЕНЕТЬ в некоторых концепциях, которые вы считаете правильными.
Вообщем становитесь разработчиков, а не фанатом отвергающим языки программирования.

Владимир

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

Ты уже раз десять приводил подобный пример, и тебе раз десять объясняли, в чем ты неправ. До тебя никак не дойдет? Первый раз в жизни встречаю настолько необучаемого человека. Вон из профессии!

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

Только не изобретайте некий СУВТ-75, а постарайтесь разработать свою архитектуру представления объектов.

Язык Си - язык для системного программирования.
Многие просто не понимают, что это означает …

Sorry за повтор.

Если вы хотите создать новый язык для системного программирования, который к тому же позволял алгоритмы представлять в виде графике, то вам нужно для начала разработать его архитектуру.
В LabView конечно алгоритмы могут быть представлены в виде некоих графических примитивах, но ИМХО можно и нужно много лучше.
Повторять то что они сделали задача «так себе».

Владимир

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

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

Немного о графическом языке программирования


Графический язык программирования должен иметь:  
 -  удобные графические примитивы /не обязательно ромбики, ... - это для студентов/;  

 -  хорошую объектную систему, которая предоставит возможность  
    использования принятых ныне представления объектов и новую,  
    поддерживающую семантику и много более;

 -  ...

PS: Если обсуждение этих задач в треде будет, то тогда продолжу диалог.

Владимир

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

Ути-пути

И примерно в том же тоне все сообщения на LOR-е. А теперь сравним с этим (из ссылки профиля):

Thanks! :) You’re embarrassing me :) Sup. Now Pi-KVM has the ability to configure custom IO ports. So now you can do whatever you want with LEDs and other things :) Your description sounds interesting, I think I’ll do some of that.

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

Kogrom
()

@metaprog, ваша проблема не в том, что вы глупый /вариации на тему/, а то что вы пока не понимаете что означает понятие разработчик.

Разработчик не будет критиковать даже арифмометр «Феликс».
У него склад ума, который не пытается что-то охаить типа «это все устарело» …

Владимир

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

Странный вы человек. Сначала пытались завлечь меня ондатровой шубой, а теперь цепляете ТС-а …

Владимир

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

Еще не позно! Дайте задним числом.

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

Разработчик не будет критиковать даже арифмометр «Феликс».

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

Владимир

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