[Freeschool] Pascal vs. C (was Re: чему стоит учить в школе)

Andrey V Stolyarov =?iso-8859-1?q?crocodil_=CE=C1_croco=2Enet?=
Вс Окт 26 20:36:03 MSK 2008


On Sat, 25 Oct 2008, Anton Farygin wrote:

> не понимаю, чем паскаль в этом случае лучше C ? Поясните несведущему..
> мне всегда казалось, что Pascal намного сложнее.

Хотя бы тем, что в Паскале имеют место быть полноценные массивы,
а не заплатка в виде арифметики указателей.  Это позволяет, в
частности, использовать массивы, _не_ вводя указателей вообще,
как таковых.  Кроме того, это позволяет избежать необратимых
повреждений детских мозгов на тему "массив и его адрес суть одно
и то же" (ни хрена оно не одно и то же, просто в Си _нет_ никаких
массивов, это всё обман трудящихся).

Далее, в Паскале есть var-параметры, которые, опять таки, очень
легко объяснить, не употребляя слово "адрес".  В Си мы вынуждены
впервые употребить слово "адрес", объясняя функцию scanf, ибо
иначе никак, а scanf требуется уже на втором-третьем уроке.  Не,
ну то есть мы можем, конечно, ученикам сказать, что вот эта вот
закорючка, которая называется непонятным словом "амперсанд",
означает что-то очень сложное, но в общем её тут обязательно надо
поставить, ага.  Только от таких объяснений деткам легче не
станет.

Конечно, в полноценном курсе обучения мы рано или поздно
указатели введём -- но не на первых уроках.  На первых уроках
ученики НЕ ГОТОВЫ вообще никак, ни психологически, ни
интеллектуально, к восприятию этой концепции.

Затем, в Паскале нет монстра по имени "препроцессор".  И он там
-- вот какая штука -- нафиг не нужен.  И это хорошо и правильно.
Даже для профессионального языка, а для учебного и подавно.

И строки в Паскале можно складывать.  Не в стандарте, конечно, но
во всех известных реализациях можно.

NB: я не к тому, что Паскаль лучше Си "вообще" -- это не так, я
сам пишу на Си и Си++, а вовсе не на Паскале.  НО! В качестве
_учебного_ языка Паскаль приемлем, а Си -- категорически
непригоден.  Ещё хуже, чем бейсик.  Руки отрывать за обучение
школьников Си (ну, исключая вариант, когда сначала всё-таки
Паскаль, а Си излагается уже для подготовленной аудитории,
имеющей к этому времени навыки программирования и определённое
понимание программистской культуры -- но такое возможно разве что
в кружках, а не для всех школьников).  Тут я очень хорошо знаю, о
чём говорю, ибо мне самому с завидной регулярностью приходится
бороться с последствиями такого обучения.



--
avst



Подробная информация о списке рассылки Freeschool