199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
1 | |
Язык программирования Яр24.01.2016, 21:58. Показов 32983. Ответов 488
Метки нет (Все метки)
Разрабатываю полностью русскоязычный язык программирования для профессионального применения (не учебный).
Основные достоинства: - можно переопределять функции и классы на ходу - при этом компиляция в нативный код (не байт-код, не JIT) - удобный синтаксис - совместно разрабатывается язык, IDE, система сборки и инструменты для рефакторинга Сайт Загрузка транслятора (Windows) с частью исходных текстов. Полные исходные тексты пока не открываю - рано ещё. Также потребуется загрузить среду разработки (инструкции на сайте). Пример программы (работающий) Хочу получить от вас обратную связь вот по этим трём документам: библиотеки модули пространства-имён Которые я всё время переписываю и вроде бы они наконец стали на что-то похожи. Или я просто ещё не заметил какие-то очередные проблемы.
0
|
24.01.2016, 21:58 | |
Ответы с готовыми решениями:
488
Язык программирования РС/Б Новый язык программирования Символьный язык программирования Язык программирования Pike |
33 / 59 / 6
Регистрация: 22.01.2017
Сообщений: 640
|
|
31.07.2017, 21:31 | 21 |
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
01.08.2017, 20:51 [ТС] | 22 |
Мне не надо писать компилятор (пока что). Речь пока идёт только о трансляции, это можно делать "не приходя в сознание", достаточно только распарсить и смоделировать некие структуры данных (пр-ва имён, модули и т.п.). Всю диагностику ошибок я пока взваливаю на реализацию лиспа, которая обрабатывает порождённый мной код.
В целом нигде не учился - подсматривал, как сделаны другие компиляторы. Но пока мои знания об оптимизации близки к нулю.
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
||||||
03.08.2017, 21:52 [ТС] | 23 | |||||
Есть некоторые новости: заработал новый транслятор (теперь Яр снова работает, чего не было уже много месяцев), в некоторых местах работает статическая типизация, есть именованные параметры, раскраска синтаксиса, переход к определению функции, переделан пошаговый отладчик, ошибки компиляции показываются в тексте Яра. Вроде мелочи и раньше я показывал больше результатов. Однако вложено чертовски много труда. И самое главное, очень сложно сделать нормальный редактор - было уже несколько попыток, но результат пока всё ещё далёк от желаемого.
Пример функции и её вызова (синтаксис сильно поменялся и явно будет меняться ещё):
Ха... уже второй форум не может понять мой знак умножения ×
0
|
33 / 59 / 6
Регистрация: 22.01.2017
Сообщений: 640
|
|
04.08.2017, 17:12 | 24 |
То ли дело непривычки, но синтаксис на русском - очень тяжело разбирать.
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
05.08.2017, 11:18 [ТС] | 25 |
Любой новый синтаксис тяжело разбирать, а на русском - особенно. Тем не менее программисты 1С - самые востребованные программисты в России, это доказывает, что русский язык сам по себе не мешает успеху в программировании.
Добавлено через 12 часов 13 минут Обсуждение возможностей,к-рые планируется добавить в язык в ближайшее время: https://bitbucket.org/budden/iar/issues/6/quote - цитирование (для случая символа) https://bitbucket.org/budden/i... ---------- хеш-таблицы
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
07.08.2017, 13:07 [ТС] | 26 |
Пополнил ответы на часто задаваемые вопросы
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
08.08.2017, 23:27 [ТС] | 27 |
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
04.09.2017, 15:49 [ТС] | 29 |
Ну, настало время отчитаться о работе, проделанной за месяц. Вот что добавилось:
- классы (точнее сказать, записи) с одиночным наследованием. Интерфейсов нет (пока не знаю, нужны ли они или нужно множественное наследование). Пока что при переопределении класса его данные уничтожаются. Методов тоже пока что нет. - REPL, в т.ч. в нём можно (пере)определять функции и классы, в т.ч. с изменением сигнатуры - составной оператор, оператор цикла. У цикла и составного оператора может быть имя - оператор "вернуть-из" - выход из именованного блока с возвратом значений - цитаты, пока не "квази", и толком годятся только для символов (а в будущем, наверное, будет примерно как в ScalaMeta) - окна возникают в определённых местах (раньше выскакивали где попало), можно их подвинуть и сохранить новое положение Релиз не выкладываю, видео не буду записывать: все новшества слишком сырые. Ещё один результат, не являющийся разработкой: промерял скорость работы записей. При всех оптимизациях получается ~60% от скорости Си. Хотя в Си более умный оптимизатор и во многих случаях разница будет больше. Если реализовать множественное наследование, то получится 5 раз медленнее, что неприятно. Также неприятны "дыры" в выводе типов лиспа, работаем над патчами к компилятору. Но прогресс за месяц неплохой. Пример кода: Код
опр класс Предок () поля П1 П2 кно опр класс Потомок (Предок) поля П3 кно опр функ Тест7 () тело пусть б -- Потомок = родись-Потомок(П1 = 1, П2 = цит(АБВ), П3 = 3) зап б.П3 = б.П1 + б.П3 л-список(б.П1,б.П2,б.П3) кно л-печать(Тест7()) // напечатает (1 абв 4)
0
|
Фрилансер
761 / 458 / 146
Регистрация: 06.01.2017
Сообщений: 4,856
|
|
04.09.2017, 21:16 | 30 |
оно реально круто конечно но только зачем? жалко ваших усилий
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
06.09.2017, 14:29 [ТС] | 31 |
Зачем? Вот табличка с новыми языками программирования. Я предлагаю тебе обратиться в эти организации с вопросом "зачем", а потом, когда они ответят, написать сюда. Когда будешь у них спрашивать, не забудь их тоже пожалеть.
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
06.09.2017, 16:05 [ТС] | 32 |
Кстати, я забыл, что в табличку нужно добавить ещё и Kotlin от JetBrains, 2011-2017. Можешь у JetBrains тоже пожалеть.
0
|
Фрилансер
761 / 458 / 146
Регистрация: 06.01.2017
Сообщений: 4,856
|
|
06.09.2017, 16:57 | 33 |
то есть вы себя сравниваете с гуглом и джетами?))) ничего себе
где о вас почитать можно?
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
06.09.2017, 18:35 [ТС] | 34 |
Я могу задать уточняющий вопрос: что вы имели в виду вот этой репликой:
0
|
33 / 59 / 6
Регистрация: 22.01.2017
Сообщений: 640
|
|
06.09.2017, 18:58 | 35 |
А никто не сравнивал себя с гуглом. Он привел список новых бессмысленных языков. Пока что его язык выглядит интереснее.
1
|
33 / 59 / 6
Регистрация: 22.01.2017
Сообщений: 640
|
|
06.09.2017, 19:13 | 37 |
Назовите хоть одну вещь, с которым Common Lisp, C++, Java не справляются, или те, которыми новыми бессмыслеными языками решается лучше.
0
|
199 / 102 / 4
Регистрация: 16.08.2015
Сообщений: 209
|
|
06.09.2017, 19:21 [ТС] | 38 |
Dmitriy_M, мы могли бы двигаться последовательно. Вы сначала намекнули, что я манипулирую со статистикой, а потом сами привели недостоверную статистику. Я подробно разобрался в вопросе и привёл доказательства вашей неправоты. Думаю, будет этично, если вы признаете свою ошибку. Ошибаться может каждый, но мужественным поступком является признание ошибки, а не тихий слив.
Насчёт языков - да, перечисленные мной языки решают круг задач. Раз такие крупные организации, способные хорошо планировать, создают свои новые языки, из этого следует, что они проанализировали существующие и остались недовольны. А раз версии выпускаются по сей день, значит, процесс создания новых языков не завершён. Т.е. сам по себе вопрос создания новых ЯП актуален.
0
|
Фрилансер
761 / 458 / 146
Регистрация: 06.01.2017
Сообщений: 4,856
|
|
06.09.2017, 21:05 | 39 |
)) ну разработчики го котлинов растов свифтов елихиров и те де получают хорошую з.п. и они востребованы на рынке (кто -то меньше кто-то больше но все же) так что не так уж и бессмысленно, да.
ну вы же написали что проект не учебный то есть будь это учебная разработка то я бы ничего не сказал а так свой язык не пишит только ленивый. Но чтобы он реально где-то использовался нужна поддержка со стороны идеально если крупная корпорация. Есть вот языки чисто для внутренного потребления но не похоже что это ваш случай. Думаю что сейчас раскрутить язык особенно столько специфический (то есть явно ориентированный только на русскоязычных специалистов) проблематично. Да 1С популярен и даже очень но там есть явная узкая специализация я в ваш проект толком не вникнал но чего то подобного не увидел действительно интересуюсь - попыток создать свой язык программирования очень много но вот заканчиваются они толком ничем, но вы не забросили дело даже спустя несколько лет (если правильно понял когда вы начали заниматься разработкой)
0
|
33 / 59 / 6
Регистрация: 22.01.2017
Сообщений: 640
|
|
06.09.2017, 21:14 | 40 |
Разроботка не бесполезна, т.к. она требует специалистов? Отличный аргумент. Если бы это был аргумент, а вы назвали существенный признак понятия "разроботка"
0
|
06.09.2017, 21:14 | |
06.09.2017, 21:14 | |
Помогаю со студенческими работами здесь
40
Язык программирования GRASS Icon язык программирования Язык программирования simit Определить язык программирования Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |