Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.53/47: Рейтинг темы: голосов - 47, средняя оценка - 4.53
 Аватар для Aow
6 / 6 / 2
Регистрация: 08.05.2012
Сообщений: 116

Предлагаю переделать язык C# (заменить стандартные ключевые слова на русские)

11.06.2012, 15:10. Показов 10290. Ответов 103
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Предлагаю переделать язык C# (заменить стандартные ключевые слова на русские). Кто хочет попробовать поучаствовать в данном проекте? Просто у меня такая мысль в голову пришла, т.к. многим начинающим программистам будет проще учить язык C# в русском формате с тем же функционалом, что и оригинал! Может моя идея и безумна, но кто ЗА?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.06.2012, 15:10
Ответы с готовыми решениями:

Заменить ключевые слова в ворде
Есть документ ворд, через делфи нужно открыть этот файл и заменить 4 ключевых слова 1. #FIO# заменить на Иванов Иван Иванович 2. #tema#...

Переделать иероглифы в русские слова
Что-то случилось с документом. Фрагмент русского текста стал представлен иероглифами. Причину не знаю. Кто подскажет, что делать? Очень...

Заменить определенные ключевые слова аналогичными изображениями (например, слово «дерево» на рисунок дерева)
Обеспечить обмен сообщений между клиентами. Заменить определенные ключевые слова аналогичными изображениями (например, слово «дерево» на). ...

103
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
07.07.2014, 13:06
Студворк — интернет-сервис помощи студентам
gazlan, не знаю, имхо интерпретатор лиспа занимает сотню строк и намного полезнее
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
07.07.2014, 16:43
Цитата Сообщение от RiabininOS Посмотреть сообщение
Встречное предложение: давайте всех обучим английскому языку.
И так в школах по N лет учат. В итоге, кому надо — те выучат и так, выучить же того, кому это не нужно, невозможно.
0
3178 / 1937 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
07.07.2014, 16:57
Цитата Сообщение от Psilon Посмотреть сообщение
интерпретатор лиспа
Судя по документации с сайта, именно он и сидит внутри.
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
07.07.2014, 17:04
Не нашёл на сайте исходников.
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
07.07.2014, 17:22
gazlan, тогда много кода

А так ладно, мои придирки это мои придирки. Что-то относительно юзабельное сделали - уже молодцы!
0
3178 / 1937 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
07.07.2014, 17:49
Их и нет. Просто такой вывод можно сделать из контекста.

Например, в "Приемы программирования КОНЦЕПТ" есть специальный раздел: "Программирование в стиле ЛИСП", а в "Ссылки в Интернет" в исходном коде страницы есть закомментированная строка:
<!--При разработке КОНЦЕПТ были использованы идеи из следующих языков и технологий программирования: Basic, Pascal, Object Pascal, Lisp, Prolog, Clipper, Clarion, SQL, HTML, XML, CSS, JavaScript, ASP и др. -->
Добавлено через 13 минут
Цитата Сообщение от Psilon Посмотреть сообщение
много кода
Менее 1.5 Mb неупакованного Delphi - ничего особенного.

На одном из форумов был выложен конвертер между несколькими системами счисления - 11 Mb Qt, и автор уверял, что это совершенно нормально: "память дешевая, диски большие".
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
07.07.2014, 17:52
Цитата Сообщение от Psilon Посмотреть сообщение
английский - самый распространенный язык в мире
с чего бы он им стал? китайский самый распространеный (китайцев то сколько)
http://en.wikipedia.org/wiki/L... f_speakers
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
07.07.2014, 19:13
pycture, с тем же успехом можно говорить про "европейский" или "человеческий". Диалектов китайского столько, что сами китайцы их не знают, по факту это различные языки. Русский украинца тоже понимает через пень колоду, и не всегда может уловить даже общий смысл, а тут все еще печальнее
0
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5
07.07.2014, 22:25
Цитата Сообщение от Aow
Предлагаю переделать язык C# (заменить стандартные ключевые слова на русские).
ок. вот это:
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
using System;
using System.Collections.Generic;
using System.Text;
 
namespace LZW
{
    public class Program
    {
        public static void Main(string[] args)
        {
            List<int> compressed = Compress("TOBEORNOTTOBEORTOBEORNOT");
            Console.WriteLine(string.Join(", ", compressed));
            string decompressed = Decompress(compressed);
            Console.WriteLine(decompressed);
        }
 
        public static List<int> Compress(string uncompressed)
        {
            // build the dictionary
            Dictionary<string, int> dictionary = new Dictionary<string, int>();
            for (int i = 0; i < 256; i++)
                dictionary.Add(((char)i).ToString(), i);
 
            string w = string.Empty;
            List<int> compressed = new List<int>();
 
            foreach (char c in uncompressed)
            {
                string wc = w + c;
                if (dictionary.ContainsKey(wc))
                {
                    w = wc;
                }
                else
                {
                    // write w to output
                    compressed.Add(dictionary[w]);
                    // wc is a new sequence; add it to the dictionary
                    dictionary.Add(wc, dictionary.Count);
                    w = c.ToString();
                }
            }
 
            // write remaining output if necessary
            if (!string.IsNullOrEmpty(w))
                compressed.Add(dictionary[w]);
 
            return compressed;
        }
 
        public static string Decompress(List<int> compressed)
        {
            // build the dictionary
            Dictionary<int, string> dictionary = new Dictionary<int, string>();
            for (int i = 0; i < 256; i++)
                dictionary.Add(i, ((char)i).ToString());
 
            string w = dictionary[compressed[0]];
            compressed.RemoveAt(0);
            StringBuilder decompressed = new StringBuilder(w);
 
            foreach (int k in compressed)
            {
                string entry = null;
                if (dictionary.ContainsKey(k))
                    entry = dictionary[k];
                else if (k == dictionary.Count)
                    entry = w + w[0];
 
                decompressed.Append(entry);
 
                // new sequence; add it to the dictionary
                dictionary.Add(dictionary.Count, w + entry[0]);
 
                w = entry;
            }
 
            return decompressed.ToString();
        }
    }
}

будет выглядеть
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
использовать Система;
использовать Система.Наборы.Общий;
использовать Система.Текст;
 
имя LZW
{
    общий класс Программа
    {
        общий статический Главный(строка[] аргументы)
        {
            Перечень<целый> сжатый = Сжать("БЫТЬИЛИНЕБЫТЬ");
            Консоль.ЗаписатьСтроку(строка.Обьеденить(", ", сжатый));
            строка росжатый = Росжать(сжатый);
            Консоль.ЗаписатьСтроку(Росжатый);
        }
 
        общий статический Список<целый> Сжать(строка росжатый)
        {
            // построение словаря
            Словарь<строка, целый> словарь = новый Словарь<строка, целый>();
            Для (целый индекс = 0; индекс < 256; индекс инкремент)
                словарь.Добавить(((символ)индекс).КСтроке(), индекс);
 
            строка в = строка.Пустой;
            Список<целое> сжатый = новый Список<целый>();
 
            Каждый (символ c в росжатый)
            {
                строка вс = в + с;
                если (словарь.Содержит(вс))
                {
                    в = вс;
                }
                если не
                {
                    // запись в в вывод
                    сжатый.Добавить(словарь[в]);
                    // вс это новая последовательность; добавление её в словарь
                    словарь.Добавить(вс, словарь.Счетчик);
                    в = с.КСтроке();
                }
            }
 
            // восстановление вывода если это необходимо
            if (!строка.ЕслиНеОпределеноЛибоПусто(в))
                сжатый.Добавить(словарь[в]);
 
            возврат сжатый;
        }
 
        общий статический строка Расжать(Список<целый> сжатый)
        {
            // создание нового словаря
            Словарь<целое, строка> словарь = новый Словарь<целое, строка>();
            Для (целый индекс = 0; индекс < 256; индекс инкремент)
                словарь.Добавить(индекс, ((символ)индекс).КСтроке());
 
            строка в = словарь[сжатый[0]];
            сжатый.УдалитьНа(0);
            КонструкторСтрок расжатый = новый КонструкторСтрок(в);
 
            Каждый (целое к в росжатый)
            {
                строка запись = не определенность;
                если (словарь.Содержит(к))
                    запись = словарь[к];
                если не (к == словарь.Счетчик)
                    запись = в + в[0];
 
                расжатый.Добавить(запись);
 
                // новая последовательность; добавление её в словарь
                словарь.Добавить(словарь.Счетчик, в + запись[0]);
 
                в = запись;
            }
 
            возврат расжатый.КСтроке();
        }
    }
}


Добавлено через 15 минут
Как пример кода на языке C# две ф-и сжатия и разжатия данных по алгоритму Лемпеля-Зива-Велча. Если ключевые слова C# на русском, тогда уже и переменные обзывать на русском, комментарии.
2
 Аватар для Cupko
660 / 597 / 171
Регистрация: 17.07.2012
Сообщений: 1,686
Записей в блоге: 1
08.07.2014, 11:56

Не по теме:

tolimadokara, больше всего мне понравилось "не определенность". Жесть прям.



Добавлено через 3 минуты

Не по теме:

И пошло-поехало:

C#
1
DBNull.Value
C#
1
НеОпределенностьВБазеДанных.Значение

1
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5
08.07.2014, 13:46

Не по теме:

Цитата Сообщение от Cupko
tolimadokara, больше всего мне понравилось "не определенность". Жесть прям.
Ну... хз :pardon: В ручную переводил.


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

Aow, вообще то работы не много. Как то в самом компиляторе языка C# надо заменить все ключевые слова на русские. Можно просто в дебаггере это сделать. Ключевых слов не много.
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
08.07.2014, 13:48
Цитата Сообщение от tolimadokara Посмотреть сообщение
Как то в самом компиляторе языка C# надо заменить все ключевые слова на русские.
Можно просто препроцессор написать.
1
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5
08.07.2014, 13:54
Цитата Сообщение от Nameless One
Можно просто препроцессор написать.
Это надо патчем оформлять к компилятору:
1. качаешь компилятор C# определенной версии.
2. качаешь патч к компилятору C# определенной версии от Aow
3. патч перекрывает файлы компилятора C#.
4. русифицированный C# готов.
--
В движок компилятора C# лучше не входить не зная его конструкции - запутаешься, *и*н* напишешь. Это не тетрис
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
08.07.2014, 14:10
Цитата Сообщение от tolimadokara Посмотреть сообщение
В ручную
у вас определенно некоторые проблемы
1
08.07.2014, 14:12

Не по теме:

Цитата Сообщение от Psilon
у вас определенно некоторые проблемы
Какие у меня проблемы?

0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
08.07.2014, 14:14
tolimadokara, hint: неопределённость, вручную.
0
08.07.2014, 14:16

Не по теме:

а, проблемы со знанием русского языка? :D ну... да, в общем

0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
08.07.2014, 16:43
Цитата Сообщение от Psilon Посмотреть сообщение
Диалектов китайского столько, что сами китайцы их не знают, по факту это различные языки
Диалектов английского не меньше. Разница только в том, что для разные диалекты английского различны как в письменном, так и в устном варианте. А разные диалекты китайского различны только в устном варианте (поэтому и не понимают), а письменный китайский на диалекты не делится (что и позволяет всей стране понимать написаное).

Добавлено через 4 минуты
а пока народ страдает, C++ уже давно перевели
http://habrahabr.ru/post/41561/
0
 Аватар для Don_Omare
78 / 80 / 70
Регистрация: 18.12.2013
Сообщений: 210
08.07.2014, 16:56
Какая разница запоминать операторы/имена на русском или на английском? Лично я не вижу никакой разницы. Я думаю тот, кто занимается програмимрованием профессионально должен знать английский язык, ъотябы базовые знания должны быть.
А так все знают, что "If" это "если" и т.д.
0
63 / 62 / 11
Регистрация: 28.12.2011
Сообщений: 280
08.07.2014, 16:59
Ну хорошо, переименуете вы операторы и ключевые слова C#, а в net framework вы тоже будете переименовывать все методы и классы? Нет конечно если бы это сделали разработчики из Microsoft, возможно я бы и пользовался этим, но любители на энтузиазме просто не смогут не перевести все грамотно ни реализовать, что-бы это работало как надо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.07.2014, 16:59

Заменить в предложении английские слова на их русские эквиваленты
Пожалуйста,помогите! При вводе предложения на английском (слова разделены &quot;_&quot;) программа должна заменить слова на русские(имеется...

Записать в файл все ключевые слова, встречающиеся в программе, указав количество появлений ключевого слова
Дана программа, написанная на языке Pascal. Записать в выходной файл построчно все ключевые слова, встречающиеся в этой программе, указав...

ключевые слова
Здравствуйте ! Помогите мне в правильности подбора ключевых слов. Сайт на тему продажи муки и зерна ! Я не как не могу подобрать...

Ключевые слова self и this
Что означает следующая запись с self и this?? public static class V2Extend { public static float PerpDot(this Vector2...

Ключевые слова
Немного ламерства. Представим, есть некое &quot;название продукта&quot;, которому посвящен сайт. Есть город &quot;СПб&quot;. Принципы работы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
100
Ответ Создать тему
Новые блоги и статьи
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
День 5 из 28: Codex подсказывает следующий запрос
and_y87 12.10.2026
9 октября 2026 года OpenAI запустила бету Composer predictions — подсказок следующего сообщения в текущем диалоге Codex. Это помощь с формулировкой запроса, а не автоматическое продолжение задачи. . . .
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru