Когда в начале 1960-х годов студенты сталкивались с программированием, они почти неизбежно имели дело с громоздким и сложным Fortran. Этот язык был мощным, но в то же время требовал от пользователя немалой подготовки.

Dartmouth и рождение BASIC

Весной 1964 года в колледже Дартмут два преподавателя, Джон Кемени и Томас Курц, представили миру новый язык программирования — BASIC (Beginner's All-purpose Symbolic Instruction Code). Его целью было сделать программирование доступным не только для студентов естественно-научных направлений, но и для гуманитариев, биологов, социологов — всех, кто хотел использовать компьютер как инструмент мышления.

BASIC был разработан вместе с системой разделения времени (DTSS), что позволило пользователям взаимодействовать с компьютером в реальном времени — в отличие от пакетной обработки, типичной для работы с Fortran. Синтаксис BASIC был прост, понятен и близок к английскому языку: PRINT, INPUT, IF...THEN. Это сделало его интуитивно понятным и привлекательным для новичков.

Путь к независимости

Хотя изначально BASIC создавался как подготовка к Fortran, его удобство и доступность сыграли решающую роль в его популяризации. С распространением персональных компьютеров в 1970–80-х годах, BASIC оказался почти везде: от Apple II до Commodore 64. Он стал языком по умолчанию на домашних ПК, а Microsoft BASIC — первым коммерческим продуктом Билла Гейтса и Пола Аллена для компьютера Altair 8800.

Стандартизация языка последовала в 1977 году (ANSI Minimal BASIC), затем появилась поддержка структурного программирования, и наконец в 1985 году был выпущен True BASIC — попытка вернуть BASIC к его академическим корням, но уже с учётом новых стандартов и подходов.

Новая жизнь BASIC в XXI веке

Несмотря на спад популярности в профессиональной разработке, BASIC не исчез. В 2020-х он продолжил эволюцию в нескольких направлениях:

  • SmallBASIC и FreeBASIC — активно развиваемые диалекты с открытым исходным кодом, работающие на Windows, Linux, Android. Поддерживают графику, звук, структурное программирование и интеграцию с современными библиотеками.

  • Visual Basic for Applications (VBA) до сих пор используется во множестве корпоративных решений для автоматизации в Microsoft Office.

  • В образовательной среде BASIC применяется как инструмент первого знакомства с алгоритмами и программированием, особенно в ретро-кружках и технических музеях.

Некоторые исследователи и педагоги продолжают использовать BASIC в обучении, ценя его мгновенный отклик и читаемость. Хотя Python занял место главного языка для начинающих, дух BASIC — программирование как средство мышления, а не как инженерная дисциплина — жив по сей день.

Заключение

Язык, родившийся как подготовка к Fortran, превратился в самостоятельное культурное и техническое явление. BASIC научил миллионы людей тому, что программирование — это не привилегия специалистов, а навык, доступный каждому. И хотя его золотой век остался в прошлом, идеи, стоящие за ним, продолжают влиять на современное программирование: простота, интерактивность и гуманность интерфейса между человеком и машиной.

Комментарии (23)


  1. zVlad909
    22.07.2025 02:47

    Когда в начале 1960-х годов студенты сталкивались с программированием, они почти неизбежно имели дело с громоздким и сложным Fortran. Этот язык был мощным, но в то же время требовал от пользователя немалой подготовки.

    Интересно где автор взял эту цитату?

    Нам Fortran преподавали в институте на специальности Автоматика и Телемеханика. Т.е. специальности довольно далекой от компьютеров и программирования. Подготовкой у меня тогда был ЯСК (язык символического кодирования) Минск-22 (по сути Ассемблер), и язык Алгол-60. Fortran был продолжением и не вызывал никаких трудностей и особой подготовки, Это мнение студента 70-х годов.

    Ни от кого не слышал и сам никогда не считал Fortran громоздким и сложным. Строго говоря Fortran на МФ был вариантом использования Assembler через макросы. Т.е. Fortran почти напрямую транслировался в Ассемблер.

    Гораздо сложнее был PL/I в его расширенной версии, entry level PL/I был достаточно доступным для начинающих программистов. Advanced PL/I уже требовал знания компьютера и использования памяти. В нем был очень развит сегмент описания памяти используемой в программе.

    С языком Basic я познакомился в связи с приобретением микроЭВМ Электроника Д3-28, в 1982 году на кафедра военного училища штурманов. Этот компьютер я купил на кафедру в Москве в магазине школьных принадлежностей. с дисплеем и транслятором c Basic, руководство к которому я прочитал на, помнится, комсомольском собрании, и вернувшись с собрания сел писать первую программу.

    Между прочим вопреки дифирамбам Basic-у в статье наиболее применяемым языком на Западе был Cobol, который в СССР практически не использовался.

    Спасибо автору за интерес к истории ИТ, но совет искать более значимые темы. Например, соберите материал и напишите про виртуальные машины, которые появились уже в конце 60-х, а вовсе не в конце 90-х.


    1. unreal_undead2
      22.07.2025 02:47

      Да, у нас Фортран был на школьном спецкурсе в начале 90х, парочка теоретических занятий - и вперёд, набивать код на терминале ЕС 1045.


    1. victor_1212
      22.07.2025 02:47

      заметим Dartmouth College это из Ivy League, т.е. примерно уровень физтеха или MIT, а John Kemeny это один из бывших коллег Richard Feynman по Los Alamos, BASIC был частью большой программы по созданию новой системы обучения студентов основам программирования, т.к. уже в 60х стало ясно, что программирование будет полезным далеко не только инженерам


    1. S_gray
      22.07.2025 02:47

      Д3-28 можно было купить в магазине?! Звучит как какая-то фантастика, если честно - по-моему, такие машины за наличные не продавались... Разве что безналом по какой-нибудь разнарядке? Я сам начинал программировать на этой машине, позже, правда - в 1984-м. Basic-3A на этой машине был...


      1. zVlad909
        22.07.2025 02:47

        Магазин был в Москве, возле метро Профсоюзная. Там разное оборудование для школ продавали. И кмк можно было бы и за нал купить, но у кого тогда мог быть нал тысячи рублеу, а если и был то им Электроника была не нужна.

        Я туда приехал с гарантийным письмом от военного училища с реквизитами для оплаты. Оставил письмо и попросил выслать Электронику в адрес училища. Через какое-то время ящик стоял у нас в лаборатории. Как я вышел на эту Электроника убей не помню. Инициатором точно был зав. кафедры. Я тогда писал на Фортране для ЕС 1033. Ну и раз появилась эта Электроника то писал (никто больше на кафедре интереса к Электронике не проявлял) программки и на ней, На Ассемблере и на Basic-3A. Был там и дисплей у нее.


        1. S_gray
          22.07.2025 02:47

          Хорошо в Москве было :) У нас в РКИИГА, скорее всего это шло через хоздоговорные НИРы, централизованным способом - Д3-28 использовались при проведении экспериментов по нагружению образцов на предмет развития усталостных повреждений. Насколько помню, у нас к ней была прицеплена ЕСовая консоль через какую-то плату...


          1. zVlad909
            22.07.2025 02:47

            Наверное терминал все таки не консоль. Консоль (console) это функция ОС, а терминал это устройство, на котором консоль материлизуется. Дисплей, пишущая машинка, пара устройств печати и ввода с перфокарт. Это так к слову. Never mind.


            1. S_gray
              22.07.2025 02:47

              На самом деле, наоборот. Консоль - это, как раз, аппаратное устройство ввода-вывода, объединяющее монитор и клавиатуру и имеющее общее подключение к компьютеру (или его программная эмуляция в современном понимании), а терминал - именно программное обеспечение для организации ввода-вывода в командной строке.

              Терминалом ещё иногда называют то, что сейчас называется "тонким клиентом" - небольшой слабый компьютер для подключения к большому компьютеру по сети. Консоль - это чистая железка, просто периферийное устройство...


              1. zVlad909
                22.07.2025 02:47

                Вы вроде про ЕСскую консоль говорите, верно?

                Так вот, как я уже писал аппаратной реализацией ОС консоли ЕС могли выступать пара: принтер и перфокарточный ввод. Могла быть электрическая пишущая машинка "Консул", мог быть дисплей ЕС 7927. И ОС (в наши дни это MVS) было без разницы как аппаратно будет представленна его та или иная (их может быть много) "консоль", которая будет использована для ввода-вывода информации к/от системы.

                An MVS™ console configuration consists of the various consoles that operators use to communicate with MVS. Your installation first defines the I/O devices it can use as MCS consoles with the hardware configuration definition (HCD). HCD manages the I/O configuration for the MVS system. You do not use HCD to define an SMCS console. To indicate to MVS which devices to use as MCS consoles, you specify the appropriate devices in the CONSOLxx parmlib member.


                1. S_gray
                  22.07.2025 02:47

                  Вот с ЕС мог ошибиться - просто тогда всё подгоняли под единый стандарт. На ДВК такая же была пара - клавиатура-монитор, причём клавиатура, ЕМНИС, к монитору подключалась. Но, к Д3-28 у нас и Консул подключали и ввод с перфоленты... Терминалы на ЕСах действительно, другие были...


              1. victor_1212
                22.07.2025 02:47

                Терминал ... небольшой слабый компьютер ... для подключения по сети

                если в районе 1984, то локальные сети не очень развиты были, и терминал обычно имел последовательный интерфейс (RS232) к терминальному серверу, т.е. просто передавал/принимал символы, а сетевая карта (NIC) была на сервере, кроме прочего NIC довольно дорого стоили, конечно терминальный сервер мог быть и на mainframe, которая работала в режиме разделения времени