Пишу, по большей части, про историю, свою жизнь и немного про программирование.

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) 2012

Кумир напомнило. Но идея в целом не плоха.

Евгений Степанищев (bolknote.ru) 2012

Комментарий для golubev.eu:

Языков на русском много. Только у меня в «бутылках» есть ( http://bolknote.ru/99.html ): КуМир, РАЯ, Паркетчик, РАПИРА.

Orcinus Orca (www.orcinus.ru) 2012

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

Евгений Степанищев (bolknote.ru) 2012

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

Пайтон на русском — тоже можно сделать но популярности программированию это не прибавит.

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

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

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

Fulcrum (fulc.ru) 2012

Выучивание набора слов, используемого в языке программирования, не имеет ничего общего с изучением английского. Не говоря о том, что программиста, не умеющего использовать латинский алфавит в программах, никто не оценит. Ну и плюс как он будет читать документацию — ему все будут переводить?

Брюс Уиллис 2012

Именно так выглядит программный код морсеанской летучей тарелки.

Евгений Степанищев (bolknote.ru) 2012

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

Ты путаешь обучение программированию и программирование. У тебя прописи были в детстве? Ты ведь в них не пишешь больше?

Детей можно обучать программированию сильно раньше, чем они способны писать эти скучные закорючки и буквы бесполезного (в это время) языка.

Евгений Степанищев (bolknote.ru) 2012

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

Для этого Пайтон, конечно, не лучший язык. Есть другие, более удачные.

Fulcrum (fulc.ru) 2012

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

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

Евгений Степанищев (bolknote.ru) 2012

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

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

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

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

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

Евгений Степанищев (bolknote.ru) 2012

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

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

Я не верю, что в детском возрасте можно учить «взрослым» языкам программирования, а если это так, то нет никакого смысла городить синтетический язык программирования не на родном для человека языке. Просто никакого смысла в этом не вижу.

Krolik 2012

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

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

Если погуглить, то можно найти даже сообщества русских учителей, которые его внедряют. Например:
https://sites.google.com/site/orenscratch/homehttp://wiki.pskovedu.ru/index.php/%D0%A3%D1%87%D0%B5%D0%B1%D0%BD%D1%8B%D0%B9_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82_Scratch_%D0%B2%D0%BE%D0%BA%D1%80%D1%83%D0%B3

Евгений Степанищев (bolknote.ru) 2012

Комментарий для Krolik:

Моя мысль была о том, что тот же синтетический язык, переведённый на русский, будет проще для понимания. И, кроме того, даст естественное понятие о том, что происходит, тогда как английские конструкции рискуют так и остаться «магией» в детской голове, без понимания что они реально значат.

Евгений Степанищев (bolknote.ru) 2012

Комментарий для Krolik:

Кстати говоря, я что-то не вижу, что он на инглише: https://sites.google.com/site/orenscratch/the-team/zanatie-1-2

Fulcrum (fulc.ru) 2012

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

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

P.S. Я не уверен, что питон подходит для изучения в детском возрасте.

Евгений Степанищев (bolknote.ru) 2012

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

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

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

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

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

Fulcrum (fulc.ru) 2012

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

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

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

Евгений Степанищев (bolknote.ru) 2012

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

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

Baka 2012

Про «японский Forth» ещё не вспоминали? ( http://no-sword.jp/blog/2006/12/programming-without-ascii.html )

Евгений Степанищев (bolknote.ru) 2012

Комментарий для Baka:

О, спасибо! :)

Туговиков Станислав (latrekc.livejournal.com) 2012

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

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

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

Евгений Степанищев (bolknote.ru) 2012

Комментарий для latrekc.livejournal.com:

Спасибо, теперь буду знать!