ChinesePython

А вы знали, что существует ChinesePython? Выглядит как настоящий, но не радует.

Язык полностью переведён на китайский, включая ключевые слова, встроенные типы и так далее, код основан на Пайтоне 2.1.3. Вот пример того как смотрится программа на этом языке:

載入 系統
文件名 = 系統.參數[1:]

定義 修正行尾(文件):
    內文 = 打開(文件名).讀入()
    內文 = 內文.替換('\n\r','\n')
    傳回 內文

取 文件 自 文件名:
    寫 修正行尾(文件)

«載入 系統» — это «import sys». Эта же программа на традиционном Пайтоне выглядит вот так:

import sys
filenames = sys.argv[1:]

def fixline(filename):
    text = open(filename).read()
    text = text.replace('\n\r','\n')
    return text

for file in filenames:
    print fixline(file)

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

Комментарии 22

golubev-eu (golubev.eu) № 1
Кумир напомнило. Но идея в целом не плоха.
Евгений Степанищев (bolknote.ru) автор № 2
Языков на русском много. Только у меня в «бутылках» есть ( /tags/99-2/ ): КуМир, РАЯ, Паркетчик, РАПИРА.
Orcinus Orca (www.orcinus.ru) № 3
Пайтон на русском — тоже можно сделать но популярности программированию это не прибавит. В другой же лапе у нас в школах принудительно преподают английский язык.
Евгений Степанищев (bolknote.ru) автор № 4
Пайтон на русском — тоже можно сделать но популярности программированию это не прибавит.

На чём основывается это предположение.

В другой же лапе у нас в школах принудительно преподают английский язык.

Нет. У нас в школах преподают английский, французский или немецкий на выбор. Кроме того, не будем забывать о качестве. И о сельских школах, где это качество может быть ещё ниже.

Fulcrum (fulc.ru) № 5
Выучивание набора слов, используемого в языке программирования, не имеет ничего общего с изучением английского. Не говоря о том, что программиста, не умеющего использовать латинский алфавит в программах, никто не оценит. Ну и плюс как он будет читать документацию — ему все будут переводить?
Евгений Степанищев (bolknote.ru) автор № 7
Ты путаешь обучение программированию и программирование. У тебя прописи были в детстве? Ты ведь в них не пишешь больше?

Детей можно обучать программированию сильно раньше, чем они способны писать эти скучные закорючки и буквы бесполезного (в это время) языка.
Евгений Степанищев (bolknote.ru) автор № 8
Для этого Пайтон, конечно, не лучший язык. Есть другие, более удачные.
Fulcrum (fulc.ru) № 9
Комментарий для Евгения Степанищева:

Детей иностранным языкам учат и в дошкольном возрасте, а программированию — ближе к старшим классам, так что не соглашусь. (Если языку в некоей школе учат плохо, то нет основания предполагать, что программированию научат хорошо.)
Евгений Степанищев (bolknote.ru) автор № 10

Комментарий для fulc.ru:

а программированию — ближе к старшим классам

Это же не значит, что так и надо.

Если языку в некоей школе учат плохо, то нет основания предполагать, что программированию научат хорошо

Нет никаких оснований предполагать и обратное.

Евгений Степанищев (bolknote.ru) автор № 11
Комментарий для fulc.ru:

Я вот так скажу, Володь.

Я не верю, что в детском возрасте можно учить «взрослым» языкам программирования, а если это так, то нет никакого смысла городить синтетический язык программирования не на родном для человека языке. Просто никакого смысла в этом не вижу.
Krolik № 12
Комментарий для Евгения Степанищева:

Ну почему же? Вот пример синтетического языка на инглише, который без проблем разложит в детской голове понятия об алгоритмах и программировании в целом:
http://scratch.mit.edu/

Если погуглить, то можно найти даже сообщества русских учителей, которые его внедряют. Например:
https://sites.google.com/site/orenscratch/ … 1%83%D0%B3
Евгений Степанищев (bolknote.ru) автор № 13
Моя мысль была о том, что тот же синтетический язык, переведённый на русский, будет проще для понимания. И, кроме того, даст естественное понятие о том, что происходит, тогда как английские конструкции рискуют так и остаться «магией» в детской голове, без понимания что они реально значат.
Fulcrum (fulc.ru) № 15
Комментарий для Евгения Степанищева:

Могу про свой опыт рассказать: первый язык программирования я «выучил» где-то в третьем классе: читал какую-то книгу про «введение в компьютеры», прочитал главу про программирование. При повторном прочтении выяснилось, что язык назывался «Бейсик» :) Так вот, учитывая, что я читал книгу без доступа к компьютеру, многое в программировании было непонятно, но что было понятно хорошо, так это названия команд «PRINT», «GOTO», «INPUT», «GOSUB», «RETURN», «LIST», «FOR» (больше не помню :) на английском языке, пусть даже некоторые пришлось посмотреть в словаре. Слова «gosub» в словаре не оказалось, но неудобств особо не доставило. Учил бы под руководством кого-то, кто бы смог объяснить — совсем не было бы проблемы.

P.S. Я не уверен, что питон подходит для изучения в детском возрасте.
Евгений Степанищев (bolknote.ru) автор № 16
Комментарий для fulc.ru:

Я за Пайтон и не выступаю, это иллююстрация принципа просто. Ты знаешь, я программирую с детства. В 1989 году я написал свою первую программу, на следующий день после того как прочитал книжку по Бейсику. Я был старше, не в третьем классе, раньше доступа к компьютеру у меня просто не было, но программирование давалось мне легко.

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

Потом я учился на ВМК, там тоже было мало людей, которым программирование давалось бы просто, естественным образом.

Из чего я делаю вывод, что большинству требуется какой-то другой способ обучения, не «вот тебе книжка, с утра с тебя программа» (на гадском айпде нет нормальных кавычек).
Fulcrum (fulc.ru) № 17

Комментарий для Евгения Степанищева:

Однако, вокруг были другие люди, которым программирование так легко не давалось.

Проблема была именно в языке? Если есть какие-то данные о том, что большинству удобнее учиться программированию на родном языке (при хотя бы минимальном знании английского), то я поверю, но по своему опыту подтвердить это не могу. Наоборот, даже, было больше ощущения, что прикасаюсь к чему-то совершенно новому, что мотивировало учить дальше.

Евгений Степанищев (bolknote.ru) автор № 18
Комментарий для fulc.ru:

Понятия не имею есть ли такие данные. У меня просто есть ощущение, что если программирование свести к составлению предложений на родном языке (без латиницы и всей это «магии», вроде скобочек), то учится будет гораздо проще.
Туговиков Станислав (latrekc.livejournal.com) № 21

Комментарий для Евгения Степанищева:

на гадском айпде нет нормальных кавычек

вообще то есть
нужно зажать кнопку с кавычками до появления меню
еще такие «множественные» кнопки: е, -, $, &, ., ?, !, '', %,