powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Ультракороткий язык программирования RS
25 сообщений из 1 922, страница 1 из 77
Ультракороткий язык программирования RS
    #36717128
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот я вернулся с отдыха, поэтому можно продолжить по стопам вот этой темы размышления на тему очень короткого и компактного языка программирования. Поскольку в той темы совершенно абстрактный первый пост, здесь начну больше с конкретики и вводной в новосозданный язык.

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

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

Пренебречь можно - скоростью работы интерпретатора, основная цель это разработка синтаксиса. Хороший и быстрый интерпретатор можно отложить на перспективу.

Условия разработки - проект интерпретатора будет разрабатываться как опен сорс на шарпе.

Использоваться будет - пока что в академических целях

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

Вводная в язык:

Традиционно знакомство с создания простейшей программы Hello World!
На языке RS это будет выглядеть так:
Код: plaintext
1.
Hello World!'

Оператор апостроф говори о обьединении всех элементов от него слева

Но можно записать и короче ( это же ультракороткий язык ).

Код: plaintext
1.
h'

Эта строка тоже выведет фразу Hello World!

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

Код: plaintext
 2 + 3 * 8 / 2 + 1 

Примечание: скобки пока в интерпретаторе не поддерживаются сделаю попозже

Обьявить обычную переменную можно так

Код: plaintext
1.
Х: 5 

Здесь мы обьявляем переменную и присваиваем ей значение 5

Обьявить массив целых чисел, допустим от 1 до 9 можно так:
Код: plaintext
1.
1_9

Можно и динамически указать диапазон массива.
Код: plaintext
1.
2.
3.
Х: 5 
3Х
Х6

В первой строчке мы создали и проинициализировать переменную значением 5, во второй создали массив с значениями 3,4,5. В третьей строчке массив с значениями 5,6.

Теперь мы можем написать свою первую программу, например нахождения факториала.
Код: plaintext
1.
2.
Х: 5 
1Х*

Над синтаксисом функции я еще думаю, поэтому первым параметром и инициализирую и обьявляю единственный параметр. Далее мы создаем массив, который начинается с единицы и заканчивается 5. Знак в конце строки * означает перемножить все элементы. (если будет + значит просуммировать, / поделить и тд)

К слову на языке К эта программа занимала 6 байт у нас 3 байта, прогресс на лицо :)

Следующим шагом будет создания программы проверки простое или число (в К 10 байт ) и сортировка.
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717165
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rstudio
Но можно записать и короче ( это же ультракороткий язык ).

Код: plaintext
1.
h'


Ооо вот оно. СБЫЛОСЬ !!!!
Появился специальный ОПЕРАТОР для вывода HelloWorld-а !!!!!!

Вы серьезно?
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717189
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Gluk (Kazan)rstudio
Но можно записать и короче ( это же ультракороткий язык ).

Код: plaintext
1.
h'


Ооо вот оно. СБЫЛОСЬ !!!!
Появился специальный ОПЕРАТОР для вывода HelloWorld-а !!!!!!

Вы серьезно? а не кажется ли, что длинновато получилось?
хэлловорлд должен появляться при интерпретировании пустого кода.
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717221
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ничто не сравнится с HQ9+ .
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717230
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rstudio
Примечание: скобки пока в интерпретаторе не поддерживаются сделаю попозже

Он над нами издевался, ну.. (c)
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717341
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eNoseGluk (Kazan)rstudio
Но можно записать и короче ( это же ультракороткий язык ).

Код: plaintext
1.
h'


Ооо вот оно. СБЫЛОСЬ !!!!
Появился специальный ОПЕРАТОР для вывода HelloWorld-а !!!!!!

Вы серьезно? а не кажется ли, что длинновато получилось?
хэлловорлд должен появляться при интерпретировании пустого кода.

отличная идея, сегодня же прийду домой и реализую эту фичу.
Ато в HQ9+ хеллоу ворлд пишется в 1 байт а у меня в 2.
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717390
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)rstudio
Но можно записать и короче ( это же ультракороткий язык ).

Код: plaintext
1.
h'


Ооо вот оно. СБЫЛОСЬ !!!!
Появился специальный ОПЕРАТОР для вывода HelloWorld-а !!!!!!

Вы серьезно?

тиха, все очень серьезно :)

Я уже знаю как запишется проверка на самое простое число:

Код: plaintext
1.
2.
X: 7 
<X%2х

5 байт. В К вообще недопустимо длинная программа - 10 байт.

Примечание: В интерпретаторе операция найти минимум и деление с остатком пока не поддерживается)

Итак читается программа очень просто.
С преведущего вводного курса молодого бойца мы знаем что 2х генерит массив с границы 2 по границу Х.
Все переменные в RS начинаются с большой буквы. Если буква маленькая то это автоматический декремент на единицу.
Тоесть

Код: plaintext
1.
2.
Х: 7 
Х=х

даст 6.
Итак развернется в

Код: plaintext
<X%( 2 , 3 , 4 , 5 , 6 )

Далее деление с остатком числа на массив даст новый массив с результатами от деления.
Операция < в начале находит минимум в этом ряду.
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717481
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rstudio,

со скобками - не заморачивайтесь, вполне можно обойтись обратной польской записью
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717511
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилrstudio,

со скобками - не заморачивайтесь, вполне можно обойтись обратной польской записью

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

Нужно подумать. Польская хорошо будет читаться для рядового программиста ?
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717512
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rstudio
тиха, все очень серьезно :)
...
Все переменные в RS начинаются с большой буквы. Если буква маленькая то это автоматический декремент на единицу.


А если мне надо напечатать 'h' ???
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717516
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rstudioПольская хорошо будет читаться для рядового программиста ?

Для рядового форт-программиста, безусловно :)
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717525
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)
А если мне надо напечатать 'h' ???

ну мы же уже решили,
в новой версии интерпретатора будешь печатать свое

h'

а размер программы хеллоу ворлд будет составлять 0 байт (чтобы не превзошли) и выводиться по дефолту на пустой листинг программы :)
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717533
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rstudio,

А два хелловорлда как вывисти? Два пустых штоле?
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717536
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rstudioПольская хорошо будет читаться для рядового программиста ?
Программируют же люди на Forth
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717537
ShSerge

А два хелловорлда как вывисти? Два пустых штоле?

h*2'
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717540
ИзопропилrstudioПольская хорошо будет читаться для рядового программиста ?
Программируют же люди на Forth

Угу.
Программы на форте традиционно супер нечитабельные.
Их сами программисты через месяц не понимают :)
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717555
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergerstudio,

А два хелловорлда как вывисти? Два пустых штоле?

шоб два хелоу ворда вывести программа будет выглядеть так

Код: plaintext
1.
.

или так

Код: plaintext
1.
 
там не пусто, там один пробел живет

я еще не решил как разделять строки и как модули :)
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717564
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rstudioShSergerstudio,

А два хелловорлда как вывисти? Два пустых штоле?

шоб два хелоу ворда вывести программа будет выглядеть так

Код: plaintext
1.
.

или так

Код: plaintext
1.
 
там не пусто, там один пробел живет

я еще не решил как разделять строки и как модули :)

Whitespace рулит
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717571
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
век воли не видать
Угу.
Программы на форте традиционно супер нечитабельные.
Их сами программисты через месяц не понимают :)

Нет, здесь все будет ультра читабельна.
Сортировка запишется примерно так:

Код: plaintext
1.
2.
X: 1 , 8 , 3 , 4 
<!=X^

Дословной расшифровывается так.
Объявлем массив с четырех элементов.
Комбинируем элементы в этом массиве (^) до тех пор пока не выполнится условие (=) когда все элементы не равны между собой (!) и когда они друг друга меньше (<)
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717601
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а вотета задача, набившая всем оскомину запишется примерно так

Код: plaintext
1.
2.
Х:. 2 ,. 7 , 1 . 3 , 2 . 6 
 76 =Х^+

это если точно нужно найти 76

и если нужно найти наиболее приближенное решение то

Код: plaintext
1.
 76 ~=Х^+
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717611
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сегодня/завтра думаю реализую ето в интерпретаторе RS,
завтра будет новая версия
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717637
Фотография Пилотажный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rstudio

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

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



Если не будет ничего оригинального теоретически (новые принципы, иные взгяды, ) или
практически, то - пустая трата времени.

Или пост - всё же шутка? Потрепаться?
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717660
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть всего два критерия:
1. Простота понимания. Схематическое представление выражений. Чтобы бросив взгляд сразу можно было разложить все по полочкам в уме и понять что за что отвечает.
2. Ультра короткие программы
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717770
didgik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пока что все примеры никак не подходят под категорию "простота понимания"...
...
Рейтинг: 0 / 0
Ультракороткий язык программирования RS
    #36717777
rstudio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а в чем сложность ?
...
Рейтинг: 0 / 0
25 сообщений из 1 922, страница 1 из 77
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Ультракороткий язык программирования RS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]