LINUX.ORG.RU

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

 , , ,


0

3

Интерактивная обучалка

https://streamable.com/dnhoy

Интерактивная инструкция по сборке факториала

https://streamable.com/h8dto

Меню из функций

Наконец допилил меню из функций. Программирование на Метапроге будет выглядеть примерно так:

https://streamable.com/xlprt

Кроме меню, давние читатели заметят сделанное по многочисленным просьбам увеличение размера шрифта на элементах блок-диагарммы и подсказках с 10 до 12.

Сама функция, считающая факториал, выглядит так:

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

Полученный код корректно считает факториал 11 (10+1, как на схеме):

https://pastebin.com/pdbhKcey

Переключатель (он же switch)

https://streamable.com/vgn3w

https://pastebin.com/tuB9X00u

Чат-клиент

Перенос кода Метапрога «сам на себя» слишком затянулся. Зато есть практически готовый прототип на LabVIEW, с помощью которого скоро можно будет совместными усилиями вести разработку и переносить Метапрог «сам на себя». Над ним еще надо чуточку поработать, а пока что есть чат-клиент, как задел под сетевой функционал.

Версия 1.

http://e2tilsgo5s44hqmlwb4epwrjnh7ynvsckj2tl5duwdqbxg67chqpelad.onion/file/de...

Требования

1. Windows начиная с ХР с кириллической локализацией (иначе будут проблемы с кодировкой символов).

2. Для запуска скомпилированного ехе-файла бесплатный рантайм (32-битный):

https://download.ni.com/support/softlib/labview/labview_runtime/2013 SP1/Wind...

3. Для просмотра и редактирования диаграмм с кодом чат-клиента - LabVIEW начиная с 2013. Как кто его достанет - личное дело каждого, если жалко денег - на торрентах оно есть.

4. Tor Browser или Tor для подключения к серверу:

https://www.torproject.org/

Сам чат-клиент лицензирован под GNU GPL v3, подробности - по кнопке «Про программу».

FAQ

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

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

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

https://i.postimg.cc/ZRzpHhnv/image.png (уже на Метапроге, а не Лабвью).

Прошлые темы:

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

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

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

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

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

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

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

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



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

Да, я и не отрицал. Вообще я самый первый и начал писать про них в metaprog-темах. Но ты же спрашивал о зависимых типах в С.

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

Так то я сам про зависимые типы в С не писал.

Вообще я самый первый и начал писать про них в metaprog-темах.

Что‐что?

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

Про зависимые типы писал первый, про зависимые типы в С начали писать недавно.

Тот комментарий про сишку был.

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

VarfolomeyKote4ka как пользователь. И в поиск «зависимые». Еще у меня был аккаунт vladimir_vist по нему тоже можешь поиск сделать.

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

Особо одаренным объясняю: Си для Метапрога - всего лишь бекенд. Речь изначально шла про зависимые типы для Метапрога, а не Си. А точнее - про блок с проверкой значения с предупрежением о несоответствии еще на этапе построения диаграмм.

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

Речь изначально шла про зависимые типы для Метапрога, а не Си.

Это мне и без твоих объяснений понятно.

А точнее - про блок с проверкой значения с предупрежением о несоответствии еще на этапе построения диаграмм.

Иди хоть прочитай, что такое зависимые типы.

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

Ну хорошо, пускай не «зависимые типы», пускай «блок проверки значений». Что-то от этого существенно изменится?

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

Что-то от этого существенно изменится?

Да, изменится; я сейчас интересовался именно зависимыми типами, а ты мне про блоки проверки значений пытаешься рассказать интересные истории.

Котечка всё‐таки ссылки честно вкинул, поэтому непонятно, зачем ты тут пытаешься эти истории рассказать.

siegment
()

Кстати, интересная аналогия:

В половину первого ночи 27 сентября 1983 года в Usenet-группе net.unix-wizards появилось необычное сообщение за подписью rms@mit-oz. Сообщение называлось коротко и крайне заманчиво: «Новая реализация UNIX». Но вместо некой готовой новой версии Unix читатель обнаруживал призыв:

В этот День Благодарения я начинаю писать новую, полностью совместимую с Unix операционную систему, которая будет называться GNU (GNU’s Not Unix). Я буду свободно раздавать её всем желающим. Мне очень нужны ваше время, деньги, код, оборудование – любая помощь.

В глазах опытного Unix-разработчика сообщение выглядело смесью идеализма с высоким самомнением. Автор не просто брался воссоздать с нуля целую операционную систему, весьма развитую и мощную, но ещё и улучшить её

Free as in Freedom на русском: Глава 7. Дилемма абсолютной морали (комментарий)

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

Автор не просто брался воссоздать с нуля целую операционную систему

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

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

Линус оказался шустрее. Но не без помощи того же gcc.

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

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

А еще есть лабвьюшный код чатика, в течение месяца скорее всего будет и код лабвьюшного прототипа Метапрога.

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

Эта шутка давно перестала быть смешной.

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

Каст полученного флоата в целое должен округлить число в меньшую сторону.

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

все только начинается

Когда планируется закончить начинать?

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

Вы только что наблюдали сценку №599 из цикла «Как изящно съехать с темы».

Код писать-то сложнее, да. Лучше вместо этого обсуждать Линуса и Столлмана.

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

Для меня, слаку делают с душой, и все пакеты собираются.

Тебе нечего не ней делать, ты даже Лазарус, элементарщину, накатить не можешь.

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

Я виноват то что lazarus такой кривой? Зайди ко мне в профиль, посмотри лучше что я собираю, свежайшие версии. Завтра наверное выложу еще Standalone GCC9 (в комплект входит C, C++, Fortran, D). И что то никаких трабл у меня с этим софтом нет.

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

вали со Слаки, она не для тебя

Это какой то особый дистр? Ну ты еще вчера думал что на ней нет ПМ, а седня уже говоришь что она не для меня, чет смешно. Rebforcer тоже никогда слаку не видел, зато по мифам начала 90х годов о ней расскажет конечно же все! Про то как там пакетов нету, даже браузеров. %)

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

Я виноват то что lazarus такой кривой?

Это ты теперь свои руки называешь Лазарус? Странный выбор, если честно.

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

Ну так, ответ будет?

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

К тому же, по контексту речь, кажется, шла о программировании для «нематёрых» людей, которые «не кладут K&R под подушку». Скорее всего, такие люди и слакварь не будут ставить, а воспользуются каким-нибудь более «мейнстримным» дистрибутивом, где и fpc, и lazarus просто накатываются через apt/dnf/zypper/чего-у-вас-там.

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

ты еще вчера думал что на ней нет ПМ

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

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

для вас с метапрогом и меню может быть системой контроля версий

Директорией репозитория.

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