Вспомним Бейсик
Mar. 2nd, 2008 12:14 amМой милый друг!
Не сомневаюсь, что лет 15 назад ты был(а) во вполне сознательном возрасте. Правда, не могу быть уверен в том, что возраст был достаточно сознательным, чтобы программировать. У многих, читающих это, был, у многих - и так, и сяк, а у остальных многих, понятное дело, не был. Лично я принадлежу ко второму подмножеству - отвратительный спрут, опутавший мой разум, тогда только просыпался.
Но это всё по боку. Хватит запрягать абстрактно. Будем запрягать конкретно.
Довольно многие из нас начинали программировать на языке BASIC. И сейчас эти многие вспомнят, думаю, что программа на этом языке - вовсе не текстовый файл, который надо просто редактировать. Я не имею в виду всяких монстров типа QBasic, и т.д. - генетических предков Visual Basic (в т.ч. .NET). Они уже тогда по возможностям приближались к Паскалю. Я имею в виду самый классический интерпретатор. Хотя совсем исходно (в 1960-е) язык был компилируемым.
Кто не знает - классический интерпретатор Бейсика - это, фактически, командная оболочка. С разными наворотами, если повезет. Для того, чтобы выполнить оператор, мы его просто вводим. Если интерпретатор не совсем туп, то оператор может быть составным.
Для того, чтобы добавить оператор к программе - сперва пишем "номер" строки, на которую надо его поставить. Строки, как правило, нумеруются не подряд, а с шагом в 10, чтобы потом можно было что-то вставить между ними. Чтобы стереть строку программы, достаточно ввести пустую строку под её номером. Чтобы отредактировать - надо вызвать команду EDIT. Иногда команда EDIT принимает номер строки, иногда строку надо выбрать заранее при помощи курсора специального вида. Если написали фуфло, то, перед вставкой фуфла в программу, интерпретатор попросит его подредактировать до вменяемого состояния. Если номера строк идут подряд, а хочется вставить еще что-нибудь, некоторые Бейсики позволяют воспользоваться "рефакторингом" - перенумеровать строки и заменить все статические GOTO и GOSUB. Операторы вида "LET i = 10 : GOTO i", ясное дело, мимо.
Для машин, на которых Бейсик был встроенной средой программирования, эти возможности были вполне адекватны. Были они адекватны и для типичных решаемых задач. Примеры машин - советский БК, различные машины сэра Клайва Синклера (и, позже, созданные в СНГ клоны и продолжения), и, не смейтесь, первые PC и Apple.
Большое количество программ, больших и маленьких, умных и глупых, полезных и вредных, было написано без всяких текстовых редакторов (но и без перфокарт), при помощи среды, являющейся, фактически, прокачанным командным интерпретатором! По современным меркам.
В начале 1990-х (считайте те же 15 лет назад) голландец Гвидо Ван Россум придумал язык Python. Язык - интерпретатор (с компиляцией в промежуточный байт-код в основной реализации), типизация динамическая, довольно объектный. Легко читается, легко изучается. Может быть использован как полным чайником, так и крутым профессионалом. И, действительно, бывает использован как тем, так и другим. Очень милый язык.
Гвидо говаривал, что Питон вполне годится для того, чтобы заменить Бейсик - в качестве языка для обучения программированию.
Но вот стандартная оболочка у него подкачала. Это уже я говорю, а не Гвидо. Программу надо писать в текстовом редакторе. Ну или еще как-то добывать. Но не в оболочке редактировать - она для этого явно не подходит. Слаба.
А кто не слаб? А вот кто. Почти. Встречайте:
Программистам, использующим Python, очень рекомендую посмотреть вот это: http://ipython.scipy.org/ .