Как я познакомился с флопцами.

Это история началась в момент моего рождения. Я родился в «День Энергетика», 22 декабря. Пожалуй, нет! Слишком рано. Оставим этот момент истории, для написания автобиографии. Так, пропускаем и момент, когда я на спор, лет в двенадцать залез рукой в подъездный щиток электроснабжения. Типа этот провод не ударит током. Не ударило.

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

Белой вьюгой пролетает работа на крайнем севере. Жизнь катится в гору. Работа энергетиком. Автокад. Проекты, проекты. Много проектов по ночам. Успех, опыт. Покупка квартиры, машины, семья дети. Дача. Стоп. Дача. Вот отсчёт. При монтаже кровли, падение со второго этажа. Компрессионный перелом позвоночника, перелом тазобедренного сустава, и очень сложный перелом левой ноги.

Вот и точка отсчёта. Она начинается в палате районной больницы. Лёжа в кровати обездвиженным телом, у меня появилось то, что многие не замечают. Что проходит мимо нас, и мы его не замечаем. Самое ценное… Время.

Да, время, свободное время, у меня появилось. Осталось выбрать, чем его заполнить. Тут я и вспомнил, что занимался радиолюбительством. Что могу отличить триггер от триппера. И различаю разницу между контроллером и контролёром. Что хотел быть программистом, и есть та самая дача. И я вроде умный. А не сделать ли на даче «умный дом».

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

Прогресс в знаниях, подтверждался в прогрессе и в лечении. До костыляв до компьютера, я начал изучать язык программирования для контроллеров Ардуино.

Тренировки по укреплению спины, сменялись тренировками в написании кода для компиляции в Arduino IDE.

Как и многие, я попался на « удочку» «Hello, world!». Вроде легко написать код, легко скомпилировать. Ну а дальше. А дальше надо учить «язык» программирования. А с английским то, туго. Из языков общения, только русский и русский матерный.

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

Scratch, круто, для детей. Но, я то не ребенок. Показалось, слишком примитивно. Scratch для Arduino. Уже близко. Опять не то. ArduBloсk, вот оно. Что искал. При близком знакомстве оказалось, что и здесь не так всё просто.

Ну это как, езда на запорожце. Просто, примитивно. Но скорость мала. А хочется газануть, познать неизведанное. И посадить блондинку рядом. Вот и обратил внимание на FLProg. Страница сайта. flprog.ru

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

Как оказалось, весь проект «тянет» на себе один человек Сергей Глушенко. Да, в меру сил, сообщество флопцев, (этот термин впервые применил я, с любезного согласия создателя проекта), помогали мне.

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

Но. Книга есть величайшее из всех изобретений человечества. Вот тут и пригодился ещё один опыт, приобретённый в жизни. Где то между ожиданием работы (монтаж электроснабжения торгового центра Ашан), появилось время. Вот и вспомнил, что писал эротические стихи в школе.
Ну и попытался написать книгу о программе FLProg.

Начал с малого, создал описание интерфейса программы. Да, конечно я не Лев Толстой. Но, чёрт возьми. Почему бы нет. Кстати раньше мой ник был «Толстый босс». После травмы, сбросив 15 килограмм, теперь скромно теперь именуюсь «bocc220v», (220 это конечно не мой вес).

После поддержки форума, продолжил «писательство». Следующая книга позволила выполнять примитивные команды и функции в программе.

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

В этой статье, я не описываю саму программу. Я описываю своё, субъективное восприятие этой программы. Я являюсь лишь одним из многих, теперь уж, точно ставшим «фанатиком» этой программы. Со всеми её недостатками и достоинствами.

Хромая, и ходя с палочкой, я всё-таки не бросил свою идею создать «Умный дом», в отдельно стоящей даче. Логическим продолжением стало создание новой книги.

FLProg. Начальный уровень. Книга даёт возможность изучить более половины всех возможностей программы.

И это только начало пути. Идея управлять парником, вырастить упитанных курочек и «защитится» от назойливых соседей, остаётся в силе. Скоро, будут новые книги и новые идеи.

С уважением, ваш boss220v.
И, да я уже хожу без «палочки».
Поделиться с друзьями
-->

Комментарии (20)


  1. rttm
    12.02.2017 00:11
    +1

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


    1. LoadRunner
      14.02.2017 10:54

      Ваш комментарий не лучше и выполнен в стиле:
      «Подъезжая к сией станцыи и глядя на природу в окно, у меня слетела шляпа».


  1. Noizefan
    12.02.2017 00:47
    +1

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


  1. boss220v
    12.02.2017 01:04

    Ну, ведь я писал что не Толстой.


    1. Noizefan
      12.02.2017 02:42
      +1

      Нет, я не хочу упрекать Вас в грамматике, у каждого свой уровень, я и сам часто косячу, просто субъективно я не особо осознал именно идею и конечную цель Вашего поста. Прорекламировать книжку, описать свою ситуацию или рассказать о технологии? Я дочитал до конца, меня правда зацепило чем-то, но идеи я абсолютно не понял, честно.


  1. Nikobraz
    12.02.2017 06:43
    -1

    Не понял фразу

    Получалось, либо дорого, либо очень дорого.

    В МК все либо дешево, либо очень дешево, если потрудиться спуститься по лестнице абстракций до железа(покупать AVR и собирать девайсы самому), а не пользоваться готовым решением. Это если конечно не ползти в сторону FPGA, там и правда все не очень бюджетно.

    Сабж же нужен тем, кто не разбирается в теме и разбираться никогда не будет.


  1. totuin
    12.02.2017 06:59

    В МК все либо дешево, либо очень дешево, если потрудиться спуститься по лестнице абстракций до железа

    Меня всегда смешили подобные заявления. Это пишет человек который смотрит данный пост в браузере написанном на языке высокого уровня (я думаю его писали не в машинных кодах). Даже программируя на ассемблере (если он конечно это делает) — он пользуется для этого программами написанными на языках высокого уровня (блокнот то же не на асме писался).
    Почему то современные программисты считают что что они имеют право писать легко и красиво, а вот разработчики железа на МК должны работать только на ассемблере. Только хардкор.
    Получалось, либо дорого, либо очень дорого.

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


    1. Nikobraz
      12.02.2017 07:11

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

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

      А ТС даже Scratch for Arduino не осилил.

      И проводя прямую аналогию, про «писать легко и красиво», никто же не программы не пишет блок-схемами.


  1. totuin
    12.02.2017 07:32
    -1

    Скажите мне, C сложный? Простой, обычный Pure C.

    А вот вы мне скажите, схема блока питания в Вашем компьтере сложная? Осилите её хотя-бы перерисовать? (я уж молчу что бы самому разработать).
    В вашей фразе звучит обычное высокомерие программиста
    А ТС даже Scratch for Arduino не осилил.

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

    никто же не программы не пишет блок-схемами.


    Да неужели! Скажите об этом Сименсу, АББ, Шнайдеру, и ещё десятку производителей промышленных контроллеров. Они будут очень удивленны, и срочно уволят своих программистов, и возьмут Вас на работу с зарплатой в лям баксов. Ну и заодно разгонят всю армию программистов АСУ.


    1. Alexeyslav
      13.02.2017 14:05

      Схема блока питания даже можно сказать примитивная, кроме случая специальной обфускации чтобы не копировали.
      А блок-схемами программы не пишут, только алгоритмы и то самые простые. Вы удивитесь сколько сложных вещей скрыты под некоторыми блоками в FLPROG, и они-то написаны на С, ассемблере и ещё не знаю на чём.
      Блок-схемы в автоматике, в том числе и FLPROG уместнее называть конфигурациями, чем программами. Эти блок-схемы просто связывают ранее написанные на языках более низкого уровня программные блоки.
      Из-а чего применяются блок-схемы в автоматике так это исключительно из-за наглядности параллельной и/или каскадной обработки данных. Но там где есть циклы или последовательная обработка — тут уже ховайся блоксхема теряет в наглядности и возрастает визуальная сложность, ориентироваться в такой схеме становится сложно, возрастает вероятность ошибки.


  1. GarryC
    12.02.2017 20:02
    -1

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


  1. totuin
    12.02.2017 20:43
    +1

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


    Конечно очень примитивные программы))))
    Я работаю на газотурбинной электростанции. У нас семь турбин по 45 мегаватт. Прошивка контроллера турбина (если точнее там два контроллера S7-400 — система повышенной безопасности, обязательное дублирование) содержит несколько тысяч чартов (один чарт представляет собой как бы законченную плату выполняющую определённую функцию — аналог класса в С — имеет свои виртуальные клеммы — аналог геттеров и сеттеров в С- с помощью которых она соединяется с другими платами (чартами)). На турбине установлено несколько сотен датчиков и исполнительных устройств. Прошивка регулирует работу турбины в зависимости от кучи параметров (температура и давление воздуха, необходимая мощность, всякие пульсации, состав газа (получает и анализирует данные от хроматографа), и ещё куча всего), производит автоматический старт (по протоколу — 73 шага), автоматический ввод в сеть, регулирование турбины по частоте, или мощности.
    Давайте назовём это простеньким процессом автоматизации, который не имеет права называться программой. Они же не на С написаны, а нарисованы блок — схемами и программой называться не имеют права (кстати в этой прошивке Вы не найдёте ни строчки кода).
    Кроме этого есть ещё общестанционная АСУ которая управляет вспомогательными стемами станции (4 котла — подогрев газа и отопления, система охлаждения турбин — по 12 вентиляторов с регулируемом с помощью ПЧ производительностью на каждую из турбин, несколько сотен автоматизированных клапанов и задвижек ну и опять таки много чего ещё ) — в которой как ни странно Вы то же не найдёте ни одной строчки кода, а только так не любимые Вами квадратики и линии. Ну то же назовем это примитивом — так калькулятор написанный на дельфях.

    Я не советую Вам оценивать ту область, в которой Вы полный ноль (извините за грубость) — иначе можно оказаться по уши в том самом (ещё раз извините).


  1. GarryC
    12.02.2017 21:36

    Нарисуйте в виде обожаемых Вами квадратиков что нибудь несложное — например алгоритм поиска суммы пятых степеней числа — я об этом недавно писал и попытайтесь в квадратиках найти все перечисленные мною оптимизации — вот тогда и поговорим о той области — программировании — о которой Вы пытаетесь судить.
    Для сложности алгоритма совершенно не важна мощность установки, и если Вы не понимаете столь очевидной вещи, то Вы явно вышли за пределы своей компетенции.
    Да, я абсолютно уверен, что алгоритмы работы систем промышленной автоматики действительно несложны, и то, что при запуске должны последовательно сработать 73 датчика перед включением очередного устройства, делает алгоритм длинным, но не сложным. Я подобные "алгоритмы управления" на заре своей деятельности переводил с реле на микросхемы, так что знаю, о чем говорю.
    Для начального введения в предмет рекомендую "Введение в алгоритмы" — есть на Курсере, после освоения этого курса вы поймете, что длина алгоритма и его сложность вещи совершенно не связанные.
    А не прижились столь любимые Вами квадратики в нормальном программировании по одной простой причине — они занимают много места, намного больше, чем текст, вот и все.


    1. totuin
      12.02.2017 22:41
      +1

      Ну как я и говорил Вы абсолютно ничего не понимаете в системах АСУ. Печально что Вы пытаетесь судить о них, с упорством Б.
      Я не знаю об алгоритме поиска суммы пятых степеней числа, не нужен был пока (понадобится — найду и разберусь).
      А насчет простоты алгоритма… Как Вы думаете логика задания соотношения подачи газа и воздуха в зависимости от состава и температуры газа, температуры, влажности, давления окружающего воздуха, нагрузки турбины, величины пульсаций на роторе, да и ещё пары десятков параметров прост? Да ещё с точной подгонкой под конкретную турбину? Это всего пара чартов в программе. А их как я уже говорил несколько тысяч. А ПИД регулятор работающий с десятком — другим параметров?
      Возьмём систему антиобледенения. Система на основании температуры, влажности, давления, для каждой турбины отдельно, на основании её оборотов, отдаваемой мощности, расхода воздуха (она его тоже сама определяет на основании перепада давления на фильтрах) определяет количество тепла необходимое каждой турбине для предотвращения образования льда на фильтрах, и с помощью заслонок поддерживает это количество тепла. Я думаю это будет посложнее определения сумм пятых степеней числа. И это то же только малая часть алгоритма.
      Я думаю что бы хоть немного развеять темноту в Вашей голове Вам стоит немного почитать о построении управляющих систем.

      Я работаю в обеих областях. Уже лент 15 я проектирую и обслуживаю автоматизированные (и достаточно сложные) системы. Примерно столько — же я занимаюсть прикладным программированием (мои проекты — cadel.ru и flprog.ru, причем последний я разрабатываю один ) и я могу сравнивать оба направления программирования в отличии от Вас. И можете мне поверить, логика работы даже одной турбины на порядок сложнее любого из моих проектов в прикладном программировании. Ну это и понятно, поскольку их разрабатывали целые проектные институты сименса.
      Ну а насчет Вашего уровня в области АСУ говорит эта фраза

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


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


      1. GarryC
        13.02.2017 11:29
        -1

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

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


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


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


        1. totuin
          13.02.2017 19:47

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

          Дайте ссылочку на описание алгоритма (я честно говоря не нашёл его описание в нете) Вы же вроде об этом где то писали. Я думаю без проблем реализую его в FBD.


  1. boss220v
    13.02.2017 11:56

    Я являюсь тем самым пользователем, для которого и написали (создали) программу FLProg. Мне нужна цель и быстрая реализация задачи. И у меня нет времени изучать язык программирования. И я не готов посвятить всю жизнь изучению низших языков программирования. Все те кто пишет негативные отзывы об этой программе, а особенно настоящие программисты, я думаю испытывают щемящее чувство утраты монополии. Я отношусь к професиональным программистам как к «богам». Но не боги горшки обжигают. Как согнали богов с Алимпа, так и сейчас ситуация меняется. Как Прометей, создатель программы FLProg, принёс простым людям возможность самим программировать контроллеры. Кто знает что будет дальше. Возможно при помощи голосовых команд можно будет создавать задачи для программирования. Любой кто подвергает критики меня, или создателя программы FLProg, для начала скиньте ссылку на вашу книгу, пусть корявую как у меня, или видеоурок с акцентом как у Грачика. Где вы делитесь своими знаниями, или опытом, и учите простых пользователей. И поверьте, люди которые программируют в FLProg, несут как правило свет в наши дома ( в среде флопчиков, много электриков). Причём и в стужу и жару и на «когтях» зависают, чтобы кто то сидя дома, учил нас, как программировать.
    С уважением ко всем людям, Boss220v


    1. GarryC
      13.02.2017 17:01

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


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


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


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


      1. totuin
        13.02.2017 18:44

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

        Ладно, посмотрим с другой стороныю Смотрим википедию.

        Компью?терная програ?мма — 1) комбинация компьютерных инструкций и данных, позволяющая аппаратному обеспечению вычислительной системы выполнять вычисления или функции управления


        Языки FBD и LAD соответствуют этому определению? Блоки представляют собой инструкции, имеются входные данные, программа на этих языках выполняется согласно описанного алгоритма.

        Ищем дальше

        FBD (англ. Function Block Diagram) — графический язык программирования стандарта МЭК 61131-3. Предназначен для программирования программируемых логических контроллеров (ПЛК). Программа образуется из списка цепей, выполняемых последовательно сверху вниз. Цепи могут иметь метки. Инструкция перехода на метку позволяет изменять последовательность выполнения цепей для программирования условий и циклов.


        Это не просто язык, а стандартизированный, мэковский.

        Ladder Diagram (англ. LD, англ. LAD, рус. РКС) — язык релейной (лестничной) логики.

        Применяются также названия:

        язык релейно-контактной логики
        релейные диаграммы
        релейно-контактные схемы (РКС)
        язык программирования релейно-лестничной логики стандарта МЭК 61131-3.


        То же себе настоящий стандартизированный язык.

        Теперь сравним С и FBD.
        1. В языке С используются стандартные функции заранее прописанные в спцификации языка. В FBD в их качестве используются функциональные блоки.
        2.В С есть классы, которые имеют свои интерфейсы для взаимодействия с ними. В FBD так же существуют аналоги классов. В зависимости от реализации это могут быть чарты, нетворки, FB ( функциональные блоки), функции (да да именно так они и называются у сименса) или платы как в FLProg. Они так же имеют интерфейсы — переменные, входы, выходы.
        3. Как и в С в FBD реализована вся математика, алгебра, и работа со всеми типами данных, возможность создания собственных типов данных, реализация собственных библиотек, а так же пользовательских блоков (аналогов функций и классов в С ). Добавление блока на схему аналогично созданию нового инстанса класса в С.
        4. Вы будете очень удивлены но в FBD как и в С реализовано ветвление, циклическое выполнение, и даже рекурсия (скажу чесно, рекурсию в FLProg я пока не реализовал, всё остальное есть. У сименса и рекурсия есть ). Учите матчасть прежде чем плевать в кого то. Может вернуться.
        А теперь расскажите мне что может С того чего не может FBD. Функционал то одинаковый, разница как говорится только в синтаксисе, и в способе его отображения. Значит и сложность алгоритмов который можно описать обеими этими языками одинакова.

        Теперь посмотрим на разработчиков. Вы как «классический» программист думаете текстом — то есть программа на FBD для Вас непонятное нагромождение квадратиков и линий. Ну что поделаешь — не дано(((
        А теперь представте себе (если конечно воображения хватит ) разработчика АСУ, по большому счёту электронщика, который эти кубики и линии читает так же как Вы листинг, на счёт раз. А вот Ваш любимый набор буковок для него китайская грамота (как и для Вас схема программы на визуальном языке). Он тупее Вас? Или он не способен описать сложный алгоритм? Ведь возможности языков как мы уже выяснили одинаковые. Значит разница только в разработчиках. Исходя из этого получается что Вы считаете всех программистов АСУ тупыми недоумками которые не способны написать программу (они ведь не пользуются великим и могучем С) а балуются всякими «Здравствуй мир». Опять таки исходя из Вашего мнения, мы, программисты АСУ можем считать Вас — программистов на С такими же недопрограмистами, ведь Вы не пользуетесь и не понимаете великий и могучий FBD на котором вообще то работает вся промышленность, за счёт которой Вы вообще то живёте.

        Вот так гражданские войны и начинаются (шутка).

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


        Ну вообще то я написал её на языке SmallTalk. Он кстати далёк от C так же примерно как и FBD но только немного в другую сторону, а точнее сказать в бок. Это язык где нет примитивов (так всё — объекты — это сложо понять, но когда понимаешь — влюбляешся), где нет кучи файлов, а есть шикарный класс браузер. В этом языке можно остановить программу, внести изменения в код, или заменить значения переменных, и продолжить выполнение программы с того же места дальше. Это наверное единственный язык, где возможно программирование через дебаг (нет я не извращенец, это действительно удобно). И именно он позволяет мне одному развивать проект FLProg достаточно интенсивно. Ни на каком другом языке я бы не справился.


        1. GarryC
          14.02.2017 10:22

          Так все таки, почему Вы взяли SmallTalk, а не "настоящий стандартизированный язык"?
          Наверное, потому, что он предназначен для программирования ПЛК, то есть на узкий и весьма специфичный класс задач, о чем я постоянно указывал в своих комментариях.


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