GOTO BASIC

    «Инициация в программирование» (1997 году, на 286-х), вторые деньги, заработанные в школе за написание программ на информатике для двоечников (первые деньги были за решение задач по физике), призовое место на краевой олимпиаде по программированию (хотя принимали программы только на Паскале и Сях, я раздобыл BASIC-компилятор и вооружившись речью про дискриминацию, загружал exe-шники, сделанные на Бэйсике. Прокатило). Первые программы по шифрованию, поворот картинки на 90 градусов… Все это было на Бэйсике (а друзья даже писали музыку и 3д-тетрис).

    Недавно на Хабре промелькнул перевод «50 лет Бейсику!» и я решил поисследовать историю создания Бэйсиков.
    Из 318 версий Бэйсиков я коснусь не больше 10.

    1964


    imageВ 1964 два профессора Дартмутского колледжа создали BASIC как инструмент, с помощью которого студенты-непрограммисты могли самостоятельно создавать компьютерные программы для решения собственных задач.

    Джон Кемени, учился у Ричарда Феймана и Алонзо Чёрча (разработчик λ-исчисления), водил знакомство с фон Нейманом и консультировал Эйнштейна по математическим вопросам.

    Томас Курц, учился у Джона Тьюки (автора слов «software» и «bit»).

    Оба награждены медалями «Пионер компьютерной техники».

    Первоначально Бейсик был реализован на мейнфрейме GE-265 с поддержкой множества терминалов.
    Вопреки распространённому убеждению, в момент своего появления это был компилируемый язык.

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

    image
    Джон Кемени обучает студентов Бэйсику.

    image
    Курц и Кемени помогают студентам разобраться с распечатками программы на Бэйсике.

    image
    Мат.программа на Бэйсике, запускаемая на мэйнфрейме удаленно. Телетайпы тогда работали с желтой бумагой. Представьте, что это не гифка, а лист бумаги выползающий из матричного принтера телетайпа.

    еще старенькие фотки
    image
    Том Курц помогает профессору физиологии Джорджу Стибицу разобраться с языком Бэйсик

    image
    Доступ к мэйнфрейму с удаленного терминала

    image
    Удаленный доступ

    image
    Первый «дэйтинг» с девушкой из Калифорнии (вот для чего всё замышлялось!)

    image
    Покак красавчики назначают свидания, ботаники исследуют распечатки программ

    image
    Профессор геологии и профессор химии выполняют вычисления для своего проекта

    image
    Мэйнфрейм GE-225 сразу после выполнения программ на Бэйсике

    image
    Профессор математики Кемени. А чего добился ты?





    1975


    image
    Да, это он

    Altair 8K BASIC на бумажной ленте
    image В 1975 году Microsoft (тогда это были лишь двое — Билл Гейтс и Пол Аллен, при участии Монте Давидова), выпустила Altair BASIC. Затем его версии появились на другой платформе под лицензией и скоро в использовании были уже миллионы копий и вариантов; один из вариантов, Applesoft BASIC, стал стандартным языком на Apple II. Для операционной системы CP/M был создан диалект BASIC-80, надолго определивший развитие языка.

    Altair BASIC представлял собой новую веху в истории программ — первый язык программирования для первого персонального компьютера и первый программный продукт компании Microsoft.

    BASIC был основным источником дохода Microsoft до начала 1980-х, когда она перешла к MS-DOS.

    Подробнее про Altair BASIC на Википедии

    а вот и сам Altair
    image

    image
    Интерпретатор Applesoft BASIC был написан фирмой Microsoft на замену системе Integer BASIC, использовавшейся в самой первой модели Apple II и обладавшей весьма ограниченными возможностями. Интерпретатор Applesoft BASIC был прошит в ПЗУ всех моделей Apple II, начиная с Apple II+, и всех клонов Apple II. Также более ранняя и более ограниченная версия Applesoft BASIC была доступна на кассетах для самой первой модели Apple II.

    Наряду с интерпретатором Applesoft BASIC, впоследствии фирмой Microsoft был разработан полностью совместимый с ним компилятор Microsoft Applesoft Compiler, позволявший ускорить выполнение программ. Сам компилятор был написан на языке Applesoft BASIC и скомпилирован при помощи самого себя.

    image
    Игра написанная Стивом Возняком на Integer BASIC, написанном Стивом Возняком

    Чтобы пользователь не запутался, Integer BASIC и Applesoft BASIC выдавали на дисплей различные символы подсказки для приглашения к вводу — «>» и «]» соответственно.



    1978


    Лео Кристоферсон: Android Nim
    image

    1979


    image
    Sinclair BASIC (назван по фамилии изобретателя сэра Клайва Синклера) — диалект языка программирования BASIC, применявшийся на 8-разрядных бытовых компьютерах в т.ч. и на ZX Spectrum
    Коммент с Хабра: «Моим первым Васиком был Sinclair BASIC, с ним я впервые приобщился к программированию. Писали на советских аналогах Спектрума «Дуэт» и «Нафаня». Мы жили тогда в небольшом городке и, страшно подумать, учили язык без гугла и почти без документации. Каждый новый оператор, каждая команда были Открытием, об их назначении и синтаксисе часто приходилось догадываться методом тыка, большой удачей считалось найти знающего человека и узнать у него пару-тройку новых фич. Было безумно радостно смотреть на свои первые программы: рисование джойстиком, перемещение простых фигур или даже проигрывание простых мелодий.»


    1981


    image
    DONKEY.BAS входящий в комплект IBM PC в 1981. соавтор некто «Bill Gates»

    1985


    image
    Quick Basic
    Душевный коммент с Хабра
    Я начинал с бейсика. С того самого Quick Basic. Потом был паскаль года до 1997, затем — Delphi, долго собирался с силами, чтобы выучить C — уж очень его синтаксис казался замудрёным после паскалевского. Пересел на C/C++ уже в институте, освоил C# потому, что он показался мне близким и похожим на Delphi. Сейчас занимаюсь Java и Android.

    И вот, что я вам скажу. Наблюдая сегодняшнее состояние индустрии, в особенности ее отношение к новичкам, я не перестаю радоваться, как же мне повезло родиться на заре IBM PC.

    У меня растет ребенок. Пока еще совсем маленький, но время пролетит незаметно. И иногда я задаю себе вопрос — смогу ли я показать ей, что такое программирование, когда она достигнет возраста заинтересованности в подобных вещах и главное — что именно я ей смогу показать, чтобы она заинтересовалась и не напугалась?

    Вопрос считаю не риторическим (во всяком случае, надеюсь, что ответ существует, хотя я его еще не нашел). И где вы сейчас найдете:

    1. Простой язык, позволяющий постепенно понять, что такое циклы и условные переходы, операторные скобки, функции и внешние модули
    2. Надёжную и элементарную IDE, заточенную строго под этот язык, рассчитанную на написание среднего размера программ, но которая при этом способна, например, вытаскивать одну функцию в рабочую область и скрывать остальные, чтобы большой объем кода не пугал неокрепший мозг

    Для всех, кто начнет рассказывать мне про простые и понятные языки для начинающих, которые легко и быстро запускаются из консоли или, прости господи, из какого-нибудь emacs, уточню: второй пункт в этом списке даже важнее первого, потому что человек делает первые шаги за руку.

    В каком-то приближении годился бы C# и VS Express, но, вспоминая, сколько всего мне пришлось изучить, чтобы разобраться в Delphi (а ведь я уже в тот момент умел что-то кодить), я понимаю, что он сгодится только как второй шаг, но никак не первый.

    В QBasic была даже валидация вводимого кода при его наборе (!) немыслимая по крутизне в те времена фича. Если не помните — валидный оператор превращался в Caps (print -> PRINT), а невалидный оставался как есть, намекая на ошибку.

    От себя скажу — если бы я не нашел тогда этот язык и среду, возможно, одним программистом было бы меньше. Убежден, что многие со мной согласятся.
    habrahabr.ru/post/221617/#comment_7557229





    В середине 1980-х Бейсик стал основным языком в сложных моделях программируемых калькуляторов, которые как раз к этому времени достигли мощности, допускающей применение полноценного языка высокого уровня. Бейсик(разг. «Васик») был встроен в советский калькулятор «Электроника МК-85» и все его более поздние модели. Применение Бейсика в качестве основного ЯВУ программируемых калькуляторов продолжается по сей день; в настоящее время именно «калькуляторный» Бейсик более всего похож на изначальный вариант 1960-80х годов


    1987


    image
    Роберт «Боб» Зейл в 1987 году на основе своей многолетней разработки BASIC/Z создал Turbo Basic, а затем продал его компании Borland. Журнал Infoworld назвал его одним из самых значительных продуктов того года.

    В отличие от большинства реализаций Бейсика того периода, Turbo Basic был полным компилятором, генерировавшим родной код для MS-DOS. Прочие реализации были или лишь интерпретаторами или сильно зависели от библиотеки времени исполнения. В самой IDE можно было запускать программы на языке Бейсик для традиционной отладки Бейсик-кода (см. ниже) или генерировать отдельный исполнимый файл для MS-DOS, который можно было запускать на других системах без установки Turbo Basic или библиотек для запуска.

    Когда Borland приняла решение прекратить выпуск этого продукта, Зейл выкупил его обратно, в 1990 году переименовав его в PowerBASIC, и основал PowerBASIC Inc. для продолжения его поддержки и развития.


    1991


    «Теперь и начинающие программисты могут легко создавать приложения для Windows»

    image
    Язык Visual Basic унаследовал дух, стиль и отчасти синтаксис своего предка — языка Бейсик, у которого есть немало диалектов. В то же время Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентно-ориентированных языков программирования. Среда разработки VB включает инструменты для визуального конструирования пользовательского интерфейса. Первый Visual Basic был интерпретатором.


    2003


    image
    MobileBASIC — интерпретируемый язык программирования, используемый для мобильных телефонов с поддержкой MIDP-2.0. Существует в 4 реализациях: как среда программирования для компьютера, как обычный мидлет для мобильных устройств, как приложение для устройств под управлением Android и iOS.

    Появился язык в 2002 году благодаря программисту Дэвиду Фёрту (англ. David J Firth), как легкое и удобное средство разработки программного обеспечения для мобильных телефонов.



    2004


    image FreeBASIC — язык программирования высокого уровня по синтаксису наиболее близкий к QuickBASIC, а также компилятор для него (FreeBASIC Compiler). Первоначально компилятор разрабатывался как свободная альтернатива Microsoft QuickBasic, но быстро оброс новыми возможностями и стал мощным средством разработки. Первые версии компилятора были написаны на Visual Basic, но теперь он может откомпилировать сам себя (написан на FreeBASIC).

    Фото с празднования на Flickr



    First BASIC Instruction Manual from 1964 (550 kb PDF)
    Structured Programming with GOTO Statements (DONALD E. KNUTH)
    Статья в Time: «Fifty Years of BASIC, the Programming Language That Made Computers Personal»

    ПС
    Список из 318-ти Бэйсиков

    F5
    Support the author
    Share post

    Similar posts

    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 32

      0
      Жаль не упомянут PowerBASIC который был куда шустрей TurboBASIC и по командам гораздо более мощный.
        +7
        Вообще-то упомянут, в разделе про TurboBasic:
        Когда Borland приняла решение прекратить выпуск этого продукта, Зейл выкупил его обратно, в 1990 году переименовав его в PowerBASIC, и основал PowerBASIC Inc. для продолжения его поддержки и развития.
        +5
        Чувствую что с Википедии взято целыми абзацами.
        Вообще стоило смотреть две линейки развития отдельно — западную и советскую. Иначе солянка получается.
          +5
          Спасибо за статью

          немного по теме
          посмотрели тут откуда пошли бейсики для домашних компов в ссср
          в общем то почти все бейсики производные от Microsoft Basic 3.2 Extended
          Первый был бейсик для MICRO-80
          потом уже он от туда расползся на остальные компы
          и проищводные бейсики от него

          исключения
          — бейсик Корвет, он порт более позднего бейсик 5.x
          — бейсик ПК8002 — он порт MSX BASIC
            +6
            Потерялся DarkBasic и Visual Basic .NET (который уже не тот VB, что полюбился) =(
              +8
              1985 Quick Basic
              1987… В отличие от большинства реализаций Бейсика того периода, Turbo Basic был полным компилятором, генерировавшим родной код для MS-DOS.


              Quick Basic — как раз компилируемый. Интерпретируемый — QBasic.

              Тут история МС бейсиков
              1.00 — 5.25" version was released on 8/18/85. In 1985 Microsoft released a new version of their command line PC BASIC compiler, and called it QuickBasic.
                +3
                Еще Purebasic.
                  +3
                  А еще есть ubasic, где:
                  10 let a=10^40
                  20 let b=a+1
                  30 let c=a-6
                  40 print b
                  50 print c

                  выводит
                  1000000000000000000000000000001
                  999999999999999999999999999994
                    +3
                    тогда уж
                    10 let a=10^30
                    +3
                    И также не упомянут gambas, аналог VB для линукса
                    • UFO just landed and posted this here
                        +3
                        image
                        • UFO just landed and posted this here
                          +1
                          это другая архитектура, микрософт был для Intel 8080 aka К580ВМ80
                          вроде микрософта для PDP не наблюдалось.

                          а это DEC PDP-11
                          его похоже сами писали/
                          его эпический баг с RND
                          image
                          кстати, его исходники (именно исходники а не дизасмы) доступны в инете.

                          и как по мне — не самый удачный бейсик (мой первый, я с него начинал)
                          самый изврат — одна комманда в строке, нет ':', неудобно :(
                          второе — он был компилятором,
                          при нажатии RUN — компилировал в шытый код, а потом уже его выполнял
                          в теории круто — компилятор
                          по факту — тормоз при старте (для больших программ десяток секунд)
                          под скомпилированный код надо место в драгоценной памяти, а его и так на БК был с гулькин нос
                          и по факту тесты быстродействия — не особо и быстро
                          для ускорения надо было всем INT переменным самому писать % после имени, отъедае еще больше памяти
                          а DEFINT как в микрософте — сделать не удосужились
                          в общем не самый удачный бейсик для домашнего компа…
                          • UFO just landed and posted this here
                          • UFO just landed and posted this here
                            +3
                            Начинал со Спектрума. Ходят слухи, что мозг программиста, покалеченный Бейсиком, не способен уходить в ООП и прочие, более продвинутые вещи. Не согласен. Мне Бейсик дал многое. Изучив его методом тыка, я покалечил сознание. С тех пор я просто мыслю алгоритмами. Создаёт некоторые незначительные трудности в общении с остальными людьми, но позволяет понимать почти любой код.
                              +3
                              Я начинал с GW-BASIC под MS-DOS 2.0
                                +3
                                Кто бы как Бейсик не ругал, но QLB — это прообраз DLL :-)
                                  +3
                                  А еще в комплекте с MS-DOS 5 и QBasic в комплекте шла игра Gorillas в исходных кодах
                                    0
                                    Да, хорошо помню ее. Мне нравилось бананы через солнышко кидать. :-)

                                    Я аналогичную игрулю потом для TI-81 писал (тоже на бэйсике).
                                    +1
                                    Сошлюсь-ка и я на свой ранний комментарий о современном использовании Бейсика.

                                    Ведь, на 2004 году все не закончилось.
                                      –1
                                      А я начинал с бейсика Z80, понемножку разбирался с его машкодами (я сильно сомневаюсь, что на 32к ОЗУ можно было бы ассемблерный компилятор развернуть) — даже кое-что простенькое для работы с графическими спрайтами делал.
                                      Потом была «черная полоса» — паскаль, которым мучили бедных студентов в институте.
                                      Затем я изучил С и начал было С++, но понял, что у меня нет задач, для которых нужна мощь С++, поэтому остался на С.

                                      Сейчас использую в работе такие ЯП:
                                      — С (микроконтроллеры, standalone, client-side и server-side в т.ч. CGI),
                                      — JavaScript (нормальную веб-морду без него не сделать),
                                      — bash (скрипты, понятное дело),
                                      — LaTeX/TeX — без них никак — ни статью написать, ни отчет, ни руководство.
                                      Приходилось еще пару раз на питоне для фрикада скрипты писать, но этот ужас лучше забыть как страшный сон.

                                      Сейчас бейсик вспоминаю с эдаким сожалением (как вспоминают СССР 70-х и начала 80-х). Но понимаю, что реально в наше время он нужен лишь для изучения программирования как такового — в школе. Практической значимости этот ЯП уже давно не имеет никакой.
                                        +1
                                        Радио-86 РК 16k — ASSM MICRON — 2k + ED MICRON 2k ;)
                                        асм и экранный редактор — 4к
                                        БК-0010 (16к доступной памяти) — ассембелкры серии МИКРО.X тоже около 4к
                                        +1
                                        Да, не забуду, моё сознательное знакомство с ПК началось в пятом классе с двух команд PRINT и LOCATE и намека, что есть ещё одна команда, похожая на принт, но только чтобы ввести с клавиатуры. И самое обидное, что в школе у установленного QB 4.5 какие-то изверги удалили файлы помощи =(
                                          0
                                          Возможно их вообще не было. Если не ошибаюсь 4.5 это урезанная версия, которая шла в комплекте с последними версиями DOS.
                                            0
                                            не, с досом шел QBasic, который был не компилируемым. А тут был именно QuickBasic 4.5, из которого для экономии места удалили все .hlp файлы.
                                          0
                                          Автор, так зачем выделено «полный компилятор»? Другие компиляторы, которые появились раньше TurboBasic, были ненастоящие что ли? Только с ранлибами?
                                            0
                                            А как же ZXSpectrum, у которого бейсик вообще был «нативным»
                                            Вот где была скорость набора кода!
                                            Заголовок
                                            image
                                              +1
                                              Блин, ну я некропостер, забыл что пришел сюда по ссылке и это старая публикация, простите!
                                                0
                                                Откуда была ссылка?
                                                  +1
                                                  Из комментария к статье по поводу др Дейкстры:
                                                  https://habrahabr.ru/company/edison/blog/283286/#comment_8891510

                                            Only users with full accounts can post comments. Log in, please.