LINUX.ORG.RU

Новый язык программирования для русскоговорящих

 , ,


2

1

Синтаксис от Хаскеля, семантика от Ракета.

факториал(сч) =
  если (сч == 1)
    1
    сч * факториал (сч - 1)

фибоначчи(сч) =
  если (сч < 3)
       1
       пусть рекурсия (н-1 1 ; н 2; тек-сч 3)
         если (сч == тек-сч) н $ рекурсия н (н + н-1) $ тек-сч + 1

Будет ещё конструкция надо-быстро с семантикой от Си (и использованием gcc).

Исходники: https://github.com/Kalimehtar/russian-lang

Пакет для Ракета: https://pkgd.racket-lang.org/pkgn/package/russian-lang

Документация: https://docs.racket-lang.org/russian-lang/index.html

★★★★★

Ответ на: комментарий от monk

А что с ним не так?

Большая часть «так», но Team в Организациях - read only. А как достучаться теперь до этих наркоманов, нихрена не понятно. Мож у кого получилось?

anonymous ()
Ответ на: комментарий от anonymous

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

И опять

Перфолента основана на технологии Net и полностью интегрирована в неё.

И более того

Выход в Open Source пока не планируется. Это может произойти не раньше, чем компилятор и стандартная библиотека не будут переписаны на Перфоленту.

В общем, рад, что есть единомышленники, но свой язык пилить всё равно надо.

monk ★★★★★ ()
Ответ на: комментарий от monk

В общем, рад, что есть единомышленники, но свой язык пилить всё равно надо.

У меня ни когда не было помысла, что разработка программ с использованием русских идентификаторов не удобна.
Но ИМХО «революционерами» не нужно быть /фанатично отказываться от всего англоязычного/.
Но и «баранами» благолепно, смотрящими на все из-за «бугра» тоже не нужно быть.

Владимир

anonymous ()
Ответ на: комментарий от anonymous

Но и «баранами» благолепно, смотрящими на все из-за «бугра» тоже не нужно быть.

ИМХО нужно разработать альтернативные форматы файлов elf, dll, lib, … для возможности использования в них имен в разной кодировке.
Конечно и ldd должен уметь работать с этими форматами.
Многие корни монополии ASCII находятся именно здесь.

Опять таки ломать «революционно» ни чего не нужно. Смысл предложенного в том, чтобы предоставить возможность компиляторам использовать новые форматы представления результата компиляции.

Многие будут противиться, критиковать, … потому как у многих в голове сидит - «не нужно» .

Владимир

anonymous ()
Ответ на: комментарий от anonymous

Кстати, вот ещё:

https://infostart.ru/public/1128834/

РФокс – это один из самых простых свободно распространяемых языков для освоения начинающими. Легко создаются экранные формы для ввода информации, сохраняются в простых DBF таблицах и легко формируются отчеты на основе шаблонов Excel и LibreOffice (OpenOffice).

monk ★★★★★ ()
Ответ на: комментарий от anonymous

ИМХО нужно разработать альтернативные форматы файлов elf, dll, lib, … для возможности использования в них имен в разной кодировке. Конечно и ldd должен уметь работать с этими форматами.

Потребуется отдельная ОС. С этим к den73.

Для dll и прочего достаточно или внешней таблицы соответствия или пуникода.

monk ★★★★★ ()
Ответ на: комментарий от monk

Потребуется отдельная ОС. С этим к @den73.

Ни какая отдельная ОС не нужно.
Чем Linux не угодил?

С этим к @den73.

Речь была не о том что я, вы или @den73 смогут произвести разработку.

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

Ныне более актуально разработка GUI.

Кстати, разрабатываемая метадата база пригодна для создания новых форматов сохранения результатов компиляции /так что не «диванный теоретик»/.

Да и в целом считаю, что эти задачи не от «Горя от ума».

PS: Для меня задача обеспечения многоязычности находится вовсе не в плоскости борьбы с «злобными дядями из-за бугра».

Владимир

anonymous ()
Ответ на: комментарий от monk

Кстати, вот ещё: https://infostart.ru/public/1128834/

Спасибо!
Интересная разработка.

Года три назад сделал рефакторинг harbour и обеспечил возможность использования всего его API из одной DLL.

Язык программирования harbour очень близок к Foxpro 2.6.
Можно было расширить не много язык программирования harbour для того, чтобы в нем работал и код на Foxpro 2.6.

Можно было бы ныне вполне «выкатить» а-ля 1С 8.xx, но зачем?

Что касается 1С и их языка программирования, то он интересен, но создавать а-ля совместимый с 1С язык программирования «не мое» - однозначно.

Архитектура языка программирования 1С «проседает» часто и густо и пригодна лишь для разработки информационных систем.

Имеется еще обширнейший класс задач - 2D, 3D, multimedia, … - «это мое» /не «брезгуя» и задачами разработки информационных систем/.

PS: 1С «не брезгую» и многие хорошие архитектурные решения от них пригодятся.

Владимир

anonymous ()
Ответ на: комментарий от anonymous

Можно было бы ныне вполне «выкатить» а-ля 1С 8.xx, но зачем?

Пожалуй НЕ ГОТОВ.

GUI пока нет /да и много чего нет/.
Так что «попотеть» придется еще много /но задача вполне реализуемая/.

PS: До «лавр» 1С мне дела нет.

Владимир

anonymous ()
Ответ на: комментарий от monk

Кстати, вот ещё: https://infostart.ru/public/1128834/

https://github.com/UfaScript/RusFox 1С-подобный язык программирования Русский Фокс

Разработчик в
https://www.nn.ru/community/techno/tech/russkiyfoks_1s-podobnyy_yazyk_programmirovaniya.html РусскийФокс — 1С-подобный язык программирования
сказал «Разрабатывается на FoxPro 9».
Так что

можно и декомпилировать

Владимир

anonymous ()
Ответ на: комментарий от peregrine

Без Метапрога вам не справиться. Только санитару не забудьте рассказывать ход разработки.

Что сказать то хотели?

Пока все о чем в треде было сказано не «фантазии манилова», а реально функционирующее API.
Да и планируемая работа - «не фантазии манилова».

Работы на несколько лет и «трубить» о ней на форумах не буду.
Сделаю, кратко расскажу о сделанном.

Владимир

anonymous ()
Ответ на: комментарий от peregrine

Без Метапрога вам не справиться. Только санитару не забудьте рассказывать ход разработки.

Не обижаюсь на вас.
Видимо «какашка» рядом лежала …

владимир

anonymous ()
Ответ на: комментарий от kookoo

А зависимые типы (ну или хотя бы уточняющие типы) будут из коробки?

Контракты будут. В том числе такие:

предоставить
  с-контрактом
    сортировка-массива
      ->и
        ; 
          м массив?
          д (м) 
            <=/к длина-массива(м)
        результат (м) 
          отсортированный-массив-из м

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

Уточняющие типы со статичесой проверкой в стиле Typed Racket можно затащить. Технически можно даже с нуля зависимые запилить. Но жёсткая типизация резко ограничивает разнообразие типов данных и функций. Поэтому пока такой задачи не ставлю.

monk ★★★★★ ()

Новый язык программирования для русскоговорящих

Да еще если многоязычный буде …
Это будет не плохое начало, потому как а-ля 1С языки - «не взлетят» /но «шуму» много будет/.

Владимир

anonymous ()

Новый язык программирования для русскоговорящих

Так что совет «стаи» решил?
Нужна многоязычность в языках программирования?

anonymous ()
Ответ на: комментарий от tz4678

ок. набор макросов на смайлоепском недоязыке = новый язык. тут был шизик

@monk развивает синтаксис языка.
Кроме того в его планах /не приоритетных правда/ обеспечение многоязычности, а это - круто.
Скорее всего у него получится что-то типа Kotlin /над раскет/.
А почему бы и нет?

Владимир

anonymous ()
Ответ на: комментарий от anonymous

Кроме того в его планах /не приоритетных правда/ обеспечение многоязычности, а это - круто.

Двуязычность в этом языке есть и будет всегда, так как наследие Racket никуда не денется и блокировать я его не намереваюсь.

monk ★★★★★ ()
Ответ на: комментарий от Lidskoe

Какую проблему решает этот язык ?

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

В перспективе единый язык для написания кода высокого и низкого уровня: сборщик мусора и все возможности лиспа в основном языке и скорость C в DSL надо-быстро.

И всё это доступно программисту, не изучавшему английский язык, также как язык конфигураций 1С и формулы MS Excel.

monk ★★★★★ ()
Последнее исправление: monk (всего исправлений: 1)
Ответ на: комментарий от monk

И всё это доступно программисту, не изучавшему английский язык, также как язык конфигураций 1С и формулы MS Excel.

Какой язык программирования близок синтаксисом вашему?

Владимир

anonymous ()
Ответ на: комментарий от anonymous

Когда приблизительно релиз планируется?

Надеюсь, через несколько месяцев. Но так как пишется в свободное от работы время и «just for fun», то как повезёт.

Руководства по синтаксису языка программирования, … будут?

Обязательно. Думаю, даже параллельно с самим языком делать в качестве документации для себя.

monk ★★★★★ ()
Ответ на: комментарий от anonymous

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

tz4678 ()
Ответ на: комментарий от anonymous

А вот когда японцы напишут ЯП на японском, и ты будешь разбирать такой код, тогда поговорим про дань носителям.

Есть разница, учить японский или английский? Времени тратится примерно одинаково.

monk ★★★★★ ()
Ответ на: комментарий от rupert

но почему-то Юкихиро Мацумото создал Руби на английском языке.

Русские программисты создали Kotlin на английском языке.

А 兼宗進 (Канемуне Шин?) разработал ドリトル (Дулитл)

Программа выглядит так:

 かめ太=タートル!作る。
 カメ=タートル! 作る。
 時計=タイマー! 作る 0.1秒 間隔 500回 回数。 時計! 「かめ太! 10 歩く」 実行。
 左=ボタン!”左”作る。 左:動作=「かめ太! 20 左回り」。
 右=ボタン!”右”作る。 右:動作=「かめ太! 10 右回り」。
monk ★★★★★ ()
Ответ на: комментарий от monk

Есть разница, учить японский или английский? Времени тратится примерно одинаково.

Во-первых, не одинаково. Во вторых не японский ИЛИ английский а японский И английский.

Плюс учить арабский, тайский и т.п. если на этих языках тоже будут написаны «национальные» ЯП. Да, кстати, им всем тоже придется учить русский, чтобы использовать ваш ЯП. Или ты уже выучил? Нет? Вот как выучишь, тогда приходи.

P.S. Впрочем, не жалко времени, ради бога. Только по моему глубокому убеждению вы делаете злое дело. Слава богу что результат заранее известен.

anonymous ()