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)
Ответ на: комментарий от rebforce

К моей метапрог-функции факториала вообще невозможно подключить знаковый или дробный тип. Только беззнаковое целое.

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

Алсо, для отрицательных он будет возвращать 1, что есть самую малость буллщит.

Не люблю экцепшны. Уж лучше

def can_factorial? value
    value.class == Integer and value >= 0
end

и

x = 10
y = x.! if can_factorial? x

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

Да у него чуть ли не главная фишка, это метапрограммирование. Вплоть до того, что, типа, навешивается обработчик для ‘method missing’ и нужный метод прикручивается на лету и вызывается. Такое просто так не JIT-нешь.

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

В метапроге нет классов!

Как Вы можете убедиться, Метапрог и есть класс, собственной персоной.

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

sql.ru

А ещё там есть 99-страничная тема про FVMas с почившим в бозе куда более эпичным продолжением на овер1000 страниц вследствие того, что на тот момент раздел «Другие СУБД» был немодерируемым. Так вот, ТС ой как того аффтара по неадекватности напоминает… И подпевала у него был тоже, кстати. Правда, в отличие от текущей ситуации, Базист в итоге оказался куда адекватней Дедала/Джерика. Здесь же обое рябое.

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

Похоже на программы из девяностых.

Тогдашний дизайн - лучший! В девяностых все делалось именно под десктоп, а не на планшеты и телефоны.

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

У меня на виртуалке ХР с темой из 98.

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

Бинарников нету, только под Debian

Йоу, ну так распакуй его и в путь. *.deb – всего лишь архив. Конечно он требует зависимостей, которые на Слаке ты задолбаешься разгребать. Но это и так и сяк, и вообще-то, ты и есть менеджер пакетов – коли выбрал Слаку – лично ты. К себе и претензии, лол.

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

Слишком рискованно. Переживаю за проект.

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

Зависимые типы

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

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

...спросил он и зачем-то привёл скриншот программы для Windows...

Она и под linux есть, я просто скриншот дал, что бы понятно было что это. Ну так, ответ будет?

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

Это миф что у слаки нет менеджера пакетов, он есть, а нормальных пакетов для lazarus'a нету. В принципе я могу поставить с помощью sladeb - Моя слака! но чет как то meh.

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

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

Для начала осиль чтение текста, а потом уже говори мне что то.

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

ряя, макаки, я пыхер с 2 часами опыта, я делаю софтвере фор сириуз бизнос! вы никто, сначала k&r прочитайте которую я бросил на 5 странице, потом что то смейте писать!21 быдлокодеры!121 быдло!21

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

Вообще-то, «текстовое программирование» у большинства современных кодеров состоит из точно таких же кубиков и проволочек, просто изображённых чуток по-другому. Более строго и компактно.

ТС всего лишь доводит эту тенденцию до абсурда. Именно поэтому я допускаю, что его идеи могут и взлететь. Правда, скорее всего, не в его исполнении.

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

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

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

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

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

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

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

Не верю, как можно было пропустить обсуждение кучи вещей которые расширяют С?

Зависимые типы, горячая замена кода, сериализация, итд…?

Зависимые типы

расширяют C

Какие зависимые типы в сишку вы вставлять собрались, наркоманы?

На вопрос ответь, демагог мамкин.

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

Ну если ты даже тему не смог прочесть…

Я не обязан читать девять тем, по ≈40 страниц (исключая эту, пока) каждая, чтобы найти ответ на свой вопрос. Поэтому на вопрос отвечай. Или тебе сложно?

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

Не верю, как можно было пропустить обсуждение кучи вещей которые расширяют С?

Зависимые типы, горячая замена кода, сериализация, итд…?

Тут ясно написано, что вы обсуждали зависимые типы как расширение C.

Теперь на вопрос отвечай.

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

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

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

Можешь прочитать в удаленных

Номер треда‐то назови.

В будущем не думаю что они появятся как то особо

Их в сишке и не будет.

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

Возможно этим анонимом был shell-root.

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

Нет, подожди, ты писал:

Не верю, как можно было пропустить обсуждение кучи вещей которые расширяют С?

Зависимые типы, горячая замена кода, сериализация, итд…?

пропустить обсуждение

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

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

Не думаю что ты найдешь такие комментарии в темах о metaprog'е, потому что я не помню что бы кто то такое писал.

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

Про зависимые типы в С? Ну сначала аноним начал, я ему отвечал, потом ты. Так то я сам про зависимые типы в С не писал.

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