image

ГОНЕЦ (gonec): Интерпретатор и платформа создания микросервисов на 1С-подобном языке
На волне импортозамещения и потребности в высокоэффективных современных кросплатформенных инструментах для программистов 1С, я выпустил первую версию интерпретатора 1С-подобного языка, и назвал его «Гонец». Платформа написана на Го, ибо я нашел его идеальным языком для таких целей.

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

Язык представляет из себя смесь языков 1С, Javascript и Go (golang), и позволяет создавать высокопроизводительные вэб-приложения и микросервисы, с низким треббованием к системным ресурсам.

> Страница проекта на гитхабе
> Документация по языку и интерпретатору
> Онлайн-версия для тестирования, развернутая в docker-контейнере heroku

Цели

Интерпретатор создан для решения программистами 1С множества задач, связанных с высокопроизводительными распределенными вычислениями, создания вэб-сервисов и вэб-порталов для работы сотен тысяч пользователей, работы с высокоэффективными key-value базами данных с использованием синтаксиса языка, похожего, но не ограниченного возможностями языка 1С.

Включив такой интерпретатор в свое решение, Вы можете предоставить высокий уровень сервиса для своих клиентов, который обгонит решения не только ваших конкурентов на рынке 1С, но и конкурентных платформ в enterprise (SAP Cloud).

Почему синтаксис похож на 1С?

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

Интерпретатор поддерживает синтаксис языка платформы 1С: Предприятие 8.3, за исключением объектов метаданных и глобальных объектов — в интерпретаторе, по понятным причинам, используются свои объекты.

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


  1. DeLuxis
    11.08.2017 10:07
    +14

    Боже, нет!


    1. pfihr Автор
      11.08.2017 10:14
      +1

      я так и знал :)))


  1. Neikist
    11.08.2017 10:38
    +2

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


    1. Neikist
      11.08.2017 11:04
      +1

      А вообще решение все же не странное, если это стеб или учебный проект (just for fun или нет — не столь важно)) Подозреваю второе.


  1. prostofilya
    11.08.2017 10:42
    +1

    Не очень удачное название, уж простите, но так и просится ещё одна буковка)


  1. Igelko
    11.08.2017 10:55
    +4

    В readme на гитхабе.


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

    Охх, мне кажется не стоит утверждать о причинно-следственной связи двух никак не коррелирующих фактов.


    1. pfihr Автор
      11.08.2017 11:02
      -3

      Для 1С-ников это все равно будет просто третья космическая скорость, так что норм :)))


      1. burnashev
        11.08.2017 14:30

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


        1. pfihr Автор
          11.08.2017 15:58

          Не понимаю о чем Вы, а вот 1с-никам скорости ой как не хватает :)


          1. Neikist
            11.08.2017 17:27

            Чаще всего не хватает не из за языка, а из за ожидания выполнения запросов, кои иногда читаешь и думаешь что проще повеситься)


        1. lash05
          12.08.2017 15:38

          Хотите лучше понять 1С-ников?


  1. Diaskhan
    11.08.2017 11:05
    +3

    О БОЖЕЕЕЕЕЕ !!!!!!


    1. pfihr Автор
      11.08.2017 13:54

      хорошо что еще компилятор не написал :)))


  1. Express777
    11.08.2017 11:16
    +1

    Неужели не нашлось другого названия?


    1. pfihr Автор
      11.08.2017 11:17

      это самое точное! :)


  1. Areso
    11.08.2017 11:29
    +1

    Автор, вы знакомы с проектом OneScript?


    1. pfihr Автор
      11.08.2017 11:48

      Знаком. Тот проект совсем о другом, и очень далек от плюшек Го, микросерисов и контейнеров.


      1. Areso
        11.08.2017 11:54

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


        1. pfihr Автор
          11.08.2017 13:50
          -3

          Для этого просто стоит почитать про Го


    1. Sjam
      11.08.2017 11:50
      -2

      Как раз размышлял на тему golang + 1C. Спасибо. Попробую


  1. napa3um
    11.08.2017 11:36
    +2

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


    Бред, конечно.


    1. Neikist
      11.08.2017 15:30

      Да стеб это, по моему подозрению.


  1. SkyHunter
    11.08.2017 13:29
    +1

    Гонец на картинке бежит назад ;)


    1. pfihr Автор
      11.08.2017 13:51
      -1

      скорее "от" :)))


  1. dmpas
    11.08.2017 14:18

    не, ну а чо? Долой засилие Си-подобных языков! Заполоним мир 1С-подобными!


    1. pfihr Автор
      11.08.2017 16:02

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


  1. mikleh
    11.08.2017 14:18

    Тут очень мало от языка 1С, потому что

    А = Новый Массив;
    


    syntax error: unexpected IDENT, expecting '('

    :( Ну и с прочие коллекции в стиле 1С не реализованы.


    1. dmpas
      11.08.2017 14:19

      Да, там скорее не 1С, а русский бейсик.


    1. pfihr Автор
      11.08.2017 16:00

      Не реализованы, потому что не нужны.
      Базовые структурные объекты реализованы в силе json, лаконично и без 1с-овских заморочек.


    1. pfihr Автор
      11.08.2017 22:51
      -1

      а=[]

      вот так будет новый массив.


  1. EvilBeaver
    11.08.2017 22:30

    Даешь примеров полезного применения! А то непонятно ж ничо! И про микросервисы туманно, особенно в сравнении с 1script. Инфы! Инфы!


    1. pfihr Автор
      11.08.2017 22:46
      -1

      все будет


  1. shuhray
    11.08.2017 22:46
    -1

    Язык оценить не берусь, а картинку смените. Человек на картинке далеко не убежит.