История языка Basic
BASIC (в переводе с английского "базовый", "основной"; в русскоязычной традиции известен как Бейсик) - язык программирования и связанная с ним среда разработки, созданные как средство обучения студентов-непрограммистов написанию программ для решения несложных профессиональных задач.
Рисунок 1. Программа на BASIC. Автор24 — интернет-биржа студенческих работ
BASIC появился в 1964 г. Его создатели - Джон Кемени и Томас Курц, сотрудники Дартмутского колледжа. Цель языка - обучение программированию на маломощных компьютерах, каковыми в ту пору являлись установленные в учебных заведениях вычислительные машины. Отличительной особенностью BASIC стало стремление разработчиков сделать этот язык не закрытым проектом, а общественным достоянием. Они руководствовались следующими принципами:
- легкость освоения;
- универсальная направленность;
- возможность подключения расширенных возможностей для продвинутых пользователей;
- интерактивность;
- сообщения об ошибках должны быть максимально понятными;
- небольшие программы должны компилироваться быстро;
- язык не должен требовать знания аппаратной архитектуры;
- пользователь должен быть изолирован от операционной системы.
Название BASIC можно рассматривать как аббревиатуру - Beginner's All-purpose Symbolic Instruction Code (Многоцелевой код символьных инструкций для начинающих).
В 1977 г. Microsoft выпустила Altair BASIC и превратила этот язык в средство коммерческого давления, добившись встраивания его в чипы ПЗУ IBM PC. Это поспособствовало резкому росту популярности языка. В те годы, на волне всплеска потребительского спроса на первые персональные компьютеры, это было объяснимо. Возможности ранних ПК были скромны, программного обеспечения для них было мало, перенос и установка ПО были трудоемки (для хранения программ использовались бытовые магнитофоны), поэтому корпорации, выпускавшие ПК, охотно встраивали BASIC в свои машины. Благодаря этому владелец компьютера мог сразу же после включения устройства приступить к его использованию.
Со второй половины 1980-х гг. персональные компьютеры становятся сложнее и мощнее. BASIC уже, во-первых, не подходит для полноценного управления такими устройствами, во-вторых, появляется рынок готового ПО, и необходимость в написании компьютерных программ неспециалистами отпадает.
В начале 1990-х гг. Microsoft выпускает на рынок язык Visual Basic, рассчитанный, опять-таки, на то, чтобы неспециалисты могли с легкостью писать небольшие программы, повышающие эффективность приложений пакета Microsoft Office (т.н. макросы для Word, Excel). На этом языке можно было создавать и полноценные самостоятельные приложения, поэтому он получил название Visual Basic for Applications (VBA) и поддерживается до сих пор. В 1990-е гг. существовала также разновидность Visual Basic Script, которой Microsoft намеревалась вытеснить JavaScript на веб-страницах. Эта концепция оказалась нежизнеспособной.
Рисунок 2. Программа на Visual Basic для рисования фракталов. Автор24 — интернет-биржа студенческих работ
Особенности языка BASIC
Классический BASIC настолько прост и легковесен, что не комплектуется, подобно другим языкам, стандартными внешними библиотеками. Их возможности включены непосредственно в транслятор (или компилятор) - программу, превращающую исходный код в бинарный.
Недостатком BASIC является и то, что в программах на этом языке большая роль отводится оператору GOTO ("перейти к..."), с помощью которого осуществляются ветвления. GOTO ссылается на номера строк, а они, по мере написания программы, могут изменяться. Несмотря на все ухищрения, с помощью которых программисты пытались решить эту проблему, использование GOTO затрудняет читаемость, превращает листинг в "спагетти-код", разобраться в котором со временем становится трудно даже автору программы. Интенсивное использование GOTO было связано с отсутствием в ранних версиях BASIC возможности использовать собственные подпрограммы и функции. Со временем в большинстве реализаций этот недостаток исправили.
BASIC стал одним из первых языков, создатели которого поняли, что компьютерные программы имеют дело не только с числами, но и с текстом. Поэтому его сильной стороной стало появление процедур обработки строк (LEFT, MID, RIGHT). Что касается чисел, то в языке использовался единственный их тип - числа с плавающей точкой. Поддерживаются также массивы и матрицы (двумерные массивы).
Реализации и диалекты BASIC
Несмотря на то, что BASIC с самого начала считался "несерьезным" языком программирования, многие компании и просто IT-специалисты создали собственные его разновидности.
Варианты BASIC существуют для множества платформ. Под свободной лицензией распространяется, например, кроссплатформенный Bywater BASIC (bwBASIC). Он предназначен для работы в консоли, т.е. без оконного интерфейса.
Еще одна бесплатная версия BASIC - Phoenix Object Basic. Он также не предназначен для работы с графическим интерфейсом, но для других целей хорошо проявляет себя и на Windows, и в Linux.
Другие реализации:
- Microsoft Quick BASIC;
- QBASIC:
- PowerBASIC;
- True BASIC;
- REALbasic (для Apple Macintosh);
- PureBasic;
- FreeBASIC;
- SmallBASIC и др.
Пример программы на языке BASIC (диалект FreeBASIC)
Рассмотрим программу, записывающую строки в файл, а затем считывающую из него.
'' Открываем файл для записи:
open "test.txt" for output as #1
'' Записываем в него строки:
print #1, "Hi,"
print #1, ""
print #1, "this is an example file,"
print #1, "powered by BASIC."
'' Закрываем файл:
close #1
'' ---
'' Открываем тот же файл для чтения:
open "test.txt" for input as #1
'' Определяем переменную для хранения строк:
dim as string ln
'' Последовательно считываем строки и выводим на экран:
do until( eof(1) )
line input #1, ln
print ln
loop
'' Закрываем файл:
close #1