Почему нет русского Си++?

geh
Сообщений: 224
Зарегистрирован: 09 дек 2013, 21:00

Почему нет русского Си++?

Сообщение geh » 21 янв 2014, 08:25

Языки программирования на русском существуют,
например С1, еще Лого (для детей). А для взрослых?
Мне кажется, что тут нет большой проблемы.
Действительно, программист имеет дело с текстовым файлом.
Допустим мы ввели русские операторы и сопоставили им английские.
Тогда к языку Си достаточно добавить небольшую программу, которая
будет переводить русские слова в английские и после перевода отдаст
файл на обработку компилятору. Так, что минимум изменений, мы
программируем по-русски и получаем программу точно такую же, как
если бы мы программировали по-английски!!
Последний раз редактировалось geh 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
kiv
Сообщений: 1012
Зарегистрирован: 02 дек 2011, 21:00

Почему нет русского Си++?

Сообщение kiv » 21 янв 2014, 11:25

Да сделать несложно.

Только мое искреннее мнение - ЭТО ПРОСТО СЧАСТЬЕ, что программирование, как и математика, для нас НЕ основана на родном человеческом языке, а представляет собой язык специфический, не отвлекающий схожестью от решения основной задачи.

Не представляю как в математике записи типа
$$Ñóì = Ñ_{ã=1}^{15}ã! + ÈÍÒ_0^{áåñê}ë^ûäû$$

так и программы с

Код: Выбрать все

класс книг
{
 открыт:
 книг(цел пар);
 пусто показать();


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

О русском языке
Последний раз редактировалось kiv 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
zam2
Сообщений: 3760
Зарегистрирован: 13 авг 2013, 21:00

Почему нет русского Си++?

Сообщение zam2 » 21 янв 2014, 11:34

geh писал(а):Source of the post Тогда к языку Си достаточно добавить небольшую программу, которая будет переводить русские слова в английские и после перевода отдаст
файл на обработку компилятору.
Ничего добавлять не нужно.
Вот программа из параллельной темы, адаптированная по вашему предложению:

Код: Выбрать все

#include <stdio.h>

#define длинное_плавающее double
#define длинное_целое     long
#define возврат             return

#define COUNT 2000000000
int main()
{
    длинное_плавающее pi=0;
    for(длинное_целое i=COUNT; i > 0; i--)
        pi +=4/(4.0*i-3)-4/(4.0*i-1);
    
    printf( "Pi=%.16f \n", pi);
    возврат 0;
}
Надеюсь, хватит здравого смысла, чтобы таким приемом не пользоваться?
Мне приходилось встречаться с такими русско-английскими гибридами.
Была (а может и есть) система управления базами данных Adabase. И ее советский аналог ДИСОД. Так во входном языке этого ДИСОДа была возможность писать ключевые слова как по-английски, так и по-русски. В результате программисты выбирали то слово, которое короче. Программы выглядели очень странно.
Последний раз редактировалось zam2 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test

geh
Сообщений: 224
Зарегистрирован: 09 дек 2013, 21:00

Почему нет русского Си++?

Сообщение geh » 21 янв 2014, 12:08

Спасибо!!!!!!!
Если это не шутка, то я все же попробую.
Класс! Но русские слова можно тоже выбрать покороче.
У меня появился еще вопрос.
Ну допустим английский лучше, а вот русские комментарии по-английски писать не будешь.
Вопрос: А нельзя ли написать такую программу,
чтобы нажав одну клавишу (например Ctrl), произошло переключение
раскладки клавиатуры с английского на русский (клавиша удерживается нажатой)
и после ввода русского текста, мы отпускаем клавишу и снова происходит
переключение на английский?? (это похоже на работу клавиши Shift для ввода букв другого регистра)
Но я и понятия не имею, как подойти к этой задаче.

У меня Си не признает кириллицы.
Он на каждую русскую букву выдал ошибку!
Последний раз редактировалось geh 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test

folk
Сообщений: 4177
Зарегистрирован: 11 сен 2009, 21:00

Почему нет русского Си++?

Сообщение folk » 21 янв 2014, 14:06

geh писал(а):Source of the post
У меня Си не признает кириллицы.
Он на каждую русскую букву выдал ошибку!

Странно - неужели и в "строках" и // комментариях? Либо что то в настройках не этак либо на помойку его) Посмотрите какая у вас кодировка выставлена в тексте.
По смыслу - на русском писать хочется только поначалу - но давайте коверкать чужой язык(согласен с Kiv). Я конечно понимаю что любимый оператор "пошел_на" звучит уже не столь выразительно, но тем не менее))
Довольно быстро вы сталкиваетесь с библиотеками и программами написанными другими людьми а те другими и все неуклонно стремится к языку английскому. Важно чтобы программа была написана на одном языке - по хорошему значения строк и прочие языковые зависимости даже выносят из программы совсем. Верно поставленный вопрос - не как писать на русском, а как писать программу работающую на ВСЕХ языках. А внутри - лучше выбрать один язык чтобы не переходить с одного на другой - эти переходы утомляют сильнее ИМХО. Ключевое слово locale - далее по инету находим как это делается. Мне кстати так и не довелось это дело довести до конца))
Последний раз редактировалось folk 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test

СергейП
Сообщений: 4145
Зарегистрирован: 17 июл 2009, 21:00

Почему нет русского Си++?

Сообщение СергейП » 21 янв 2014, 14:17

geh писал(а):Source of the post Языки программирования на русском существуют,
например С1, еще Лого (для детей). А для взрослых?
Ну как же, и для взрослых существуют.
Точнее, наверное, существовали.
Пришлось в своё время поработать. Это с 1982 года по 1990, пришлось поработать на полностью русифицированной технике, типа СМ-ский клон. Из языков там ассемблер и КОБОЛ были. Ну к ассемблеру постепенно привык, а вот как только глаз касался любой проги на этой коболятине - у меня неудержимо дикий смех наступал
Последний раз редактировалось СергейП 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test

geh
Сообщений: 224
Зарегистрирован: 09 дек 2013, 21:00

Почему нет русского Си++?

Сообщение geh » 21 янв 2014, 14:33

У меня комментарии проходят нормально.
И все, что в кавычках тоже.
Но в тексте программы не одна русская буква не пройдет.
Последний раз редактировалось geh 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test

Аватар пользователя
kiv
Сообщений: 1012
Зарегистрирован: 02 дек 2011, 21:00

Почему нет русского Си++?

Сообщение kiv » 21 янв 2014, 15:42

geh писал(а):Source of the post
Kiv, спасибо!! Я все понял, ведь константу я не изменю, даже если сильно захочу.
Потом их как правило немного в отличие от переменных.


Если ну очень сильно захотеть - то можно все. Не хочу рассказывать, как - все равно компилятор при этом превратит ее в обычную переменную, а смысл?!

zam2 писал(а):Source of the post
Ничего добавлять не нужно.

Далеко не все компиляторы позволят русские буквы в define'ах. VC++ пускает, OW матерится...
Последний раз редактировалось kiv 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test

folk
Сообщений: 4177
Зарегистрирован: 11 сен 2009, 21:00

Почему нет русского Си++?

Сообщение folk » 21 янв 2014, 15:45

kiv писал(а):Source of the post
Далеко не все компиляторы позволят русские буквы в define'ах. VC++ пускает, OW матерится...

g++ тоже обругал - не хочет UTF-8 кушать во входном тексте в идентификаторах а в строках ест.
Последний раз редактировалось folk 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test

geh
Сообщений: 224
Зарегистрирован: 09 дек 2013, 21:00

Почему нет русского Си++?

Сообщение geh » 21 янв 2014, 16:09

Kiv, а вот Visual Basic разрешает даже переменные
обозначать русскими буквами. Это может быть удобно для
создания шаблонов (программ частого пользования).
Тут можно не беспокоиться, что какая-то переменная может быть дублирована.
Последний раз редактировалось geh 27 ноя 2019, 21:19, всего редактировалось 1 раз.
Причина: test


Вернуться в «Computer Science»

Кто сейчас на форуме

Количество пользователей, которые сейчас просматривают этот форум: нет зарегистрированных пользователей и 25 гостей