Coder Social home page Coder Social logo

neumannvm's Introduction

python compilate.py fib - переводит код в бинарник fib.bin
python exec.py fib.bin n - выполняет программу. Рекурсивно находит n-ое число Фибоначчи
Максимальное n = 13, так как пока-что поддерживается только int8. Может быть потом доработаю

Описание языка:

Программа состоит из функций. Функции объявляются с помощью :functionName на отдельной строке (больше на этой строке ничего не должно быть).
Главной функцией (которая будет вызвана при старте программы) явяется та, чье имя совпадает с названием файла программы. Либо если такой нет, главной назначается первая функция.

У каждйо строки в функции есть "собственный стек значений", который я буду называть просто строкой. (Новая строка удаляет стек предыдущей)

Поддерживаемые команды:

  • x - добавляет в конец строки число x
  • +, -, <, >, =__ - операторы. Оператор берет два последних числа в строке, выполняет над ними соответсвующую операцию, результат записывает в конец строки.
  • func - выполняет функцию func, записывает результат в стек. Значения стека строки передается функции как аргументы
  • ; выходит из функции возвращая последнее значение из строки в которой был вызван. В главной фунции завершает программу
  • .x - добавляет в стек аргумент функци под номером x. Номер считатся в обратном порядке от функции. Пусть напрмиер есть строка 10 20 func. Внутри func 20 доступно по .0 , а 10 по .1.
  • a b ^ - если первое a != 0, то пропускает b следующих строк (a, b - последние значения в стеке)
  • ( ... ) - скобки создают подстроку из которой возвращают последнее число

neumannvm's People

Contributors

l1onsun avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.