RusLang

From Esolang
Jump to navigation Jump to search

RusLang is an esoteric programming language for having no latin letters the letters are cylirric (functions are an exception) it was created by me for my sister (i am User:Esoboring ideas)

Description

Original

RusLang это язык программирования который могут понять даже 4х-летки! Есть 3 диалекта:детский,студенческий и профессиональный. Детский для детей,студенческий для студентов,профессиональный для профессионалов.

English

RusLang is a programming language that toddlers can understand! There are three dialects:childish,student and medium dialects. childish dialect for kids. student dialect for school students. Junior-medium dialect is for coders that are gonna be medium coders.

Syntax

Database

А,Б,В,Г,Д,Е,Ё,Ж,З,И,Й,К,Л,М,Н,О,П,Р,С,Т,У,Ф,Х,Ц,Ч,Ш,Щ,Ъ,Ы,Ь,Э,Ю,Я,а,б,в,г,д,е,ё,ж,з,и,й,к,л,м,н,о,п,р,с,т,у,ф,х,ц,ч,ш,щ,ъ,ы,ь,э,ю,я," ",",",".","!","?". See i put the non-letters in quotes because not to be confused with real ones and also it is from 0 to 70 you can type the quotes in the right side and the symbol in quotes it will have the number of the symbol in quotes in the database

Python analog

  1. ф-и
  2. ф+и
  3. =
  4. while(ф > 0)
  5. define function: (almost the same as define)
  6. import library
  7. ф=int(input())
  8. ф=database.index(input())
  9. print(ф)
  10. print(database[ф])

Childish dialect

  1. от ф убери и
  2. соедини ф с и
  3. это
  4. повторять то что в {} если в Ф что-то есть
  5. узнать у [] что такое function
  6. посмотреть в библиотеку и заменить это на то что в библиотеке
  7. положи число в коробку Ф
  8. положи символ в коробку Ф
  9. посмотри число в коробке Ф
  10. посмотри символ в коробке Ф

Student dialect

  1. -
  2. +
  3. =
  4. повторять {} пока Ф>0
  5. создать function по []
  6. загрузить library
  7. вводчис(Ф)
  8. вводсим(Ф)
  9. выводчис(Ф)
  10. выводсим(Ф)

Junior-medium dialect

  1. -
  2. +
  3. =
  4. пк Ф>0
  5. зн function
  6. имп library
  7. вч(Ф)
  8. вс(Ф)
  9. вхч(Ф)
  10. вхс(Ф)

Warning:everything else will be in junior-medium dialect

The important rule

The right side of an equal sign have to have zero or one function on numbers or other variables or this variable and at the left only one variable that will equal to the right side

Variables

They are cyrrillic uppercase the most optimal way to do is А Б В Г all the way to Я АА АБ АВ to АЯ БА ББ БВ БГ to ЯЯ ААА ААБ to ЯЯЯ АААА infinitely

The difference between the real define

The difference is that in the real define is that the arguments are only the chunks of capital cyrillic letters everything else is considered a function (except зн at the start) this creates a problem that RusLang cant be easily compiled into python or something

How to fix this problem

To fix this problem i thought about the Pythonable Ruslang

Examples

Hello, world!

А="П"
вхс(А)
Б="р"
вхс(Б)
В="и"
вхс(В)
Г="в"
вхс(Г)
Д="е"
вхс(Д)
Е="т"
вхс(Е)
Ё=","
вхс(Ё)
Ж=" "
вхс(Ж)
З="м"
вхс(З)
И="и"
вхс(И)
Й="р"
вхс(Й)
К="!"
вхс(К)

Truth machine

вч(А)
пк А>0
{
вхч(А)
}
вхч(А)

Libraries

What is one in RusLang

The library is a program that cannot be reduced to Pythonable RusLang by itself and when some library is imported then the import command will be replaced with the library and the library will be reducable

Prebuilt Library "МАКРОСЫ"

зн А*Б
[
В=Б
Б=0
пк А>0
{
А=А-1
Б=Б+В
}
вр(Б)
]

зн А/Б
[
В=0
пк А>0
{
А=А-Б
В=В+1
}
вр(В)
]

зн А^Б
[
В=А
А=1
пк Б>0
{
Б=Б-1
А=А*В
}
вр(А)
]

зн А!
[
Б=1
{
Б=Б*А
А=А-1
}
вр(Б)
]

To mention

The arguments in naming a function are changed to values of the arguments in calls of the function and the arguments in naming a function are the "functions variables" that are variables only in that square brackets

See also