Skip to content

Pelmeshka127/Language

Repository files navigation

Language

Содержание

  1. Описание
  2. Язык
  3. Запуск проекта

Описание

В этом проекте я реализовал свой язык программирования. Проект включает себя несколько ранее написанных мной библиотек таких, как струткура данных Stack, обработка текстового файла Parsering и виртуальный процессор CPU. Первый этап работы программы - FrontEnd, который содержит лексический и синтаксический анализ программы, написанной на моем языке. В этом процессе при помощи рекурсивного спуска строится AST дерево. Второй этап работы - BackEnd, который при помощи построенного AST дерева строит ассемблерный текст моей программы, который в последствии обрабатывается CPU.

Язык

Внимание! (18+)

Любая программа должна начинаться с главной функции

hentai

Функция объявляется с помощью

step brother <название> im stuck

Если функция содержит аргументы a и b, то выглядит это так:

step brother Function im a, b stuck

Возвращаемое значение функции:

boobs <значение>

Оператор

cumming

используется для выхода из функции без возвращаемого значения.

Для вызова функции достаточно напсиать ее имя и аргументы:

Function im a, b stuck

В языке есть условные операторы - аналоги if, else if(elif), else:

dildo

anal beads

strapon

Блоки функций и условных операторов выделяются ключевыми словами

start sex

<блок кода>

end sex

Для записи условий условных операторов используются круглые скобки:

dilfo (x nice dick 0)

Логическеи операторы сравнения:

==  nice dick
!=  pussy
>   big dick
<   small dick
>=  nice big dick
<=  nice small dick

Для инициализации переменной служит ключевое слово milf

milf x = 0

Имена переменных и функций могут состоять из латинских букв верхнего и нижнего регистра, содержать цифры, но не могут содержать знаки пунктуации(допустимы только отрицательные числа). Имя не может начинаться с цифры.

Для ввода числовых данных с клавиатуры:

fisting anal(x)

При этом переменная x должна быть инициализирована

Для вывода числовых данных:

suck dick(x)

В языке присутствует аналог цикла while:

horny (x nice dick 0) start sex

<блок кода>

end sex

В моем языке присутствуют арифметические операции сложения, вычитания, умножения и деления

+ - * /

Пример программы, написанной на моем языке программирования, считающей факториал числа:

step brother hentai im stuck
start sex

milf number = 0

fisting anal(number)

number = Fuckmetorial im number stuck

suck dick(number)

cumming
end sex


step brother Fuckmetorial im x stuck
start sex

    dildo (x nice dick 1) start sex
        boobs 1
    end sex

    strapon start sex
        boobs x * Fuckmetorial im x - 1 stuck
    end sex

    cumming
end sex

Запуск проекта

git clone git@github.com:Pelmeshka127/Language.git

cd Language

make

obj/lang Examples/2.txt

cd Assembler

make

./assembly ../asm.txt prog.bin

cd ..

cd CPU

make

./cpuiu

About

Мой язык программирования

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published