BASIC
BASIC (Beginner’s All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих) — семейство высокоуровневых языков программирования. Был распространён на персональных микрокомпьютерах, таких как Commodore 64 и Sinclair ZX81, и часто запускался вместе со средой. Например, клавиши Sinclair ZX Spectrum были подписаны командами Бейсика для облегчения ввода. Бейсик позволял домашним пользователям и другим не-специалистам самим писать программы для микрокомпьютеров, в отличие от использовавшихся ранее языков программирования, предназначенных для математиков и учёных.
На Бейсике того времени было написано много видеоигр, работавших в текстовом режиме. В компьютерных журналах публиковался исходный код игр (и просто полезных программ), который читатели могли вбить в свой компьютер и запустить игру. Программа такого формата занимала обычно до 150 строчек, так как должна была уместиться в ограниченную оперативную память (в некоторых конфигурациях — всего килобайт). Каждая марка компьютеров имела свой диалект Бейсика и свои особенности (отличия были даже между такими моделями как ZX80 и ZX81), поэтому при вводе программ для других моделей требовалась некоторая адаптация. Само изложение программ в журналах также рекомендовало различные модификации, например, для увеличения или уменьшения сложности — как с конкретными инструкциями, так и в виде идей, реализацию которых пользователь волен проработать сам. Таким образом многие видеоигр на Бейсике ходили в различных версиях как подлинно народное творчество. В ту эпоху обзоры компьютерных игр часто указывали язык программирования, на котором создавалась игра, что обычно было «Бейсик» или «машинный код». Некоторые игры, такие как «3D Monster Maze», пополам состояли из того и другого.
Множество популярных видеоигр на Бейсике было собрано Дэвидом Алем и издано в книге «BASIC Computer Games». Одной из самых популярных игр на Бейсике была «Star Trekсм.», известности которой способствовала популярность «Звёздного пути» среди компьютерщиков. Из-за этого игра ходила во многих модифицированных версиях, самая распространённая из которых называлась «Super Star Trek».
Содержание
История
Бейсик был придуман в 1964 году преподавателями Дартмутского Колледжа Джоном Кемени и Томасом Курцем, и под их руководством был реализован командой студентов колледжа. Язык был основан частично на Фортране II и частично на Алголе 60. Со временем, когда стали появляться другие диалекты, изначальную реализацию стали называть Dartmouth BASIC.
Бейсик был спроектирован так, чтобы студенты могли без затруднений писать программы, используя терминалы с разделением времени. Он предназначался для более «простых» пользователей, не столько заинтересованных в скорости исполнения программ, сколько просто в возможности использовать компьютер для решения своих задач, не имея специальной подготовки.
При проектировании языка использовались следующие восемь принципов. Новый язык должен был:
- быть простым в использовании для начинающих;
- быть языком программирования общего назначения;
- предоставлять возможность расширения функциональности, доступную опытным программистам;
- быть интерактивным;
- предоставлять ясные сообщения об ошибках;
- быстро работать на небольших программах;
- не требовать понимания работы аппаратного обеспечения;
- защищать пользователя от операционной системы.
Критика
В пору своего расцвета (1970—1980 годы) Бейсик подвергся жёсткой критике. Помимо констатации очевидных недостатков языка, связанных с синтаксической бедностью ранних вариантов и отсутствием многих признанных и удобных конструкций и механизмов, Бейсик критиковали за то, что его простота и бесструктурность поощряют применение порочных методик разработки и способствуют выработке опасных привычек программирования, которые иногда могут быть уместны при быстром создании малых программ для текущих нужд, но способны привести к краху крупных проектов.
Резко критиковалось повсеместно распространённое начальное обучение программированию, базирующееся на Бейсике. Одной из «визитных карточек» Эдсгера Дейкстры стало высказывание: «It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration». («Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они умственно изувечены без надежды на восстановление».)[1]
В ответ на критику адепты Бейсика замечают, что критики приписывают языку те негативные стороны, которые следовало бы отнести к его неправильному применению. Недостатки Бейсика (если иметь в виду ранние диалекты) проявляются при попытке профессиональной разработки на нём сложных и крупных программ и при использовании его как базового языка для обучения программистов, но ни для одного их этих применений данный язык не предназначался; его основной задачей было предоставить студентам-непрограммистам возможность после минимального обучения самостоятельно писать простейшие программы для собственных нужд, чтобы не отвлекать на эту работу специалистов. Этой задаче язык вполне соответствует.
Примечания
Ссылки
- Бейсик в Википедии
- BASIC Computer Games в библиотеке Atari Archives