Как работают стековые машины в языках программирования.

Ғылым және технология

Стековые виртуальные машины - наиболее распространенный вариант архитектуры для современных языков программирования . На примере виртуальной машины 1С мы изучем, как они работают и напишем настоящий код, прямо в "ассемблерных" командах машины 1С, минуя компилятор. Даешь хардкор!
Обработка, показанная в видео: github.com/EvilBeaver/v8asm

Пікірлер: 40

  • @klim0v
    @klim0v4 ай бұрын

    Класс: спасибо за ваш профессионализм, ни когда бы не подумал что при изучении смарт контрактов попаду на канал по 1с 😀👍

  • @iolkonew
    @iolkonew3 жыл бұрын

    Видео аффигенное. Даже просто в целях повышения образованности. Андрей, развивайте канал. Очень интересно все, что Вы делаете

  • @plugfox.archive
    @plugfox.archive3 жыл бұрын

    Мое уважение, отлично про стековые машины рассказал) Хоть я уже и не в 1С и эту тему нюхал подробнее (эвент лупы, очереди синк/асинк операций, изоляты, JIT/AOT), но все равно послушал с большим удовольствием.

  • @andrei-karpov
    @andrei-karpov3 жыл бұрын

    Супер, отличная подача, было очень интересно смотреть!

  • @HODYTONE
    @HODYTONE3 жыл бұрын

    Хорошая музыка. Спасибо. Скоро кирпичей на дачу хватит))))

  • @hypergloom600
    @hypergloom600 Жыл бұрын

    Откуда такие познания? Самопознания, структурированные курсы или специализированная литература? (не только знания про стеки, а к примеру работу с JIT) Очень классное видео, случайно нашел ваш канал, кладезь информаций, и образовательного контента.

  • @user-zr4uw5ng3r

    @user-zr4uw5ng3r

    Жыл бұрын

    Спасибо, очень приятно слышать! Познания самые обычные, просто что-то почитал, ничего особенного. Есть куча областей в IT, в которых я не понимаю совсем ничего.

  • @g240596448
    @g2405964483 жыл бұрын

    Так это же калькулятор "Электроника MK61/52" ) В нем тоже была кнопка стека, а действие после помещения значений, а не ДО. Вот зачем я это 25 лет назад учил ! (вообще-то 30((( ого...)

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    3 жыл бұрын

    Да, это он

  • @prograwwe
    @prograwwe2 жыл бұрын

    Это было великолепно

  • @alexeibelousov3279
    @alexeibelousov32793 жыл бұрын

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

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    3 жыл бұрын

    Код открыт, присылайте доработки на гитхаб

  • @filaretbusoni3135
    @filaretbusoni31353 жыл бұрын

    - "Money gets back I'm all right Jack Keep your hands off my stack" - absolute rubbish! И указкой фигак

  • @AlexandrShepelev
    @AlexandrShepelev3 жыл бұрын

    @EvilBeaver, привет! Скажи, а тебе было бы не сложно/интересно сделать видео по таким темам: 1) разработка внешней обработки на EDT с использованием всех плюшек, которые ты оценил. 2) Использование Vanessa-automation с EDT и создание обработки + создание теста. ВОт именно эту информацию уже который месяц не могу в понятном виде найти.

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    3 жыл бұрын

    Под созданием теста в едт имеется ввиду использование 1unit?

  • @AlexandrShepelev

    @AlexandrShepelev

    3 жыл бұрын

    @@user-nd9cv4pd5m Да, наверное... к сожалению этот вопрос привел меня в секундный ступор. Ну да, по логике юнит тест. Просто это реально здорово, когда не методист рассказывает, а практик!

  • @antoffkaa

    @antoffkaa

    3 жыл бұрын

    Vanessa же под предприятием работает. Хоть из конфигуратора запускай скрипты, хоть из под EDT.

  • @user-kn8hl7fq4v
    @user-kn8hl7fq4v3 жыл бұрын

    Подскажите пожалуйста про ГИТ. Для сборки указано: Открыть в Конфигураторе, сохранить, как epf. Скрипт автоматической сборки отсутствует Я не понял - что нужно открыть в конфигураторе?

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    3 жыл бұрын

    Корневой xml-файл

  • @user-kn8hl7fq4v

    @user-kn8hl7fq4v

    3 жыл бұрын

    @@user-nd9cv4pd5m Получилось, спасибо

  • @kuzyara555

    @kuzyara555

    2 жыл бұрын

    @@user-nd9cv4pd5m формата конфигуратора больше нет, теперь только edt

  • @vadimsergeev7874
    @vadimsergeev78742 жыл бұрын

    При добавлении процедуры, выводит странные ошибки, "Индекс находится за границами массива".....

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    2 жыл бұрын

    При добавлении процедуры куда? Опишите подробнее что вы делаете и что за ошибка

  • @vadimsergeev7874
    @vadimsergeev78742 жыл бұрын

    Очень интересная тема, всегда хотелось узнать как работает 1с изнутри. Как можно связаться с Вами?

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    2 жыл бұрын

    Приходите к нам в телегу @oscript_library

  • @vadimsergeev7874

    @vadimsergeev7874

    2 жыл бұрын

    @@user-nd9cv4pd5m группа недоступна.....

  • @user-zr4uw5ng3r

    @user-zr4uw5ng3r

    2 жыл бұрын

    @@vadimsergeev7874 OneScript, oscript-library Чат по движку OneScript (oscript.io) и библиотеке пакетов oscript-library. Сообщение-приветствие, правила и набор ссылок: t.me/oscript_library/496 t.me/oscript_library

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    2 жыл бұрын

    @@vadimsergeev7874 вы не успели решить капчу. попробуйте еще раз

  • @user-fz1cv8fq6w
    @user-fz1cv8fq6w3 жыл бұрын

    Андрей, почему в 1С нет GIT? Или без предварительной полной компиляции конфигурации в байт-код это нельзя сделать? Сейчас ведь кешируется скомпилированный байт-код, а потом выполняется. Почему нельзя сразу кешировать машинный код?

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    3 жыл бұрын

    Вы как-то в одну кучу свели ГИТ, кеширование и компиляцию. Поясните ваш вопрос, начиная с тезиса, что в 1С нет ГИТ (он же там есть)

  • @nixel2007

    @nixel2007

    3 жыл бұрын

    @@user-nd9cv4pd5m кажется имелся ввиду JIT

  • @user-fz1cv8fq6w

    @user-fz1cv8fq6w

    3 жыл бұрын

    @@user-nd9cv4pd5m Да, я имел ввиду JIT-компиляцию. Почему 1С это не сделает? Ведь это увеличит производительность. Или чтобы был JIT нужна полная предварительная компиляция конфигурации в байт-код? Или нужно чтобы сервер 1С работал долго без перезапуска, что в 1с невозможно?

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    3 жыл бұрын

    ​@@user-fz1cv8fq6w Дело в том, что код 1С сам по себе не медленный. Он вполне быстро выполняется для возложенных на него задач. Основной "тормоз" 1С - некачественные запросы, которые пишут программисты и на местах и в типовых. Почему нет JIT - это довольно сложная технология, ее просто так не сделаешь, поэтому тут затраты vs выгода. Ускорение языка будет, но в целом вся система вряд ли станет быстрее чем на 4-5% (см. запросы)

  • @user-fz1cv8fq6w

    @user-fz1cv8fq6w

    3 жыл бұрын

    @@user-nd9cv4pd5m Что вас удерживает в 1С? Судя по тому что 1Script написан на C#, вы неплохо в нем разбираетесь. Почему не перейдете туда? Неужели в 1С больше платят?

  • @SergeyMazurkin
    @SergeyMazurkin3 жыл бұрын

    LdRet - это хорошо

  • @user-bi1zh1dt4k
    @user-bi1zh1dt4k3 жыл бұрын

    и нахрена нам это все в зоопарке??? :-)

  • @user-nd9cv4pd5m

    @user-nd9cv4pd5m

    3 жыл бұрын

    Не нравится - не смотрите, кто заставляет-то? А вообще, для общего развития полезно. Стековые машины повсюду, не только в 1С. Иногда, знаете, полезно вылезти из клепания отчетиков и посмотреть вокруг.

Келесі