Microsoft разместила исходные источники языка ассемблера 8088 для своего интерпретатора GW-BASIC от 10 февраля 1983 года на GitHub в репо с пометкой «Архивировано». Несмотря на то, что файлы выпущены по лицензии MIT(OSI), они используются с открытым исходным кодом только для исторических справочных и образовательных целей. Так что не думайте о том, чтобы делать какие-либо запросы на вытягивание!
1983 год уже прошел довольно долгий путь в истории простого языка, предназначенного для любителей и их микрокомпьютеров. Это было 20 лет назад, когда БАЗОВЫЙ, Универсальный символический код обучения для начинающих, возник в Датмутском колледже. Основанная на FORTRAN, она была детищем Джона Кемени и Тома Курца, которые вместе со своими студентами работали над ней летом 1963 года, разделяя PDP-1 в Массачусетском технологическом институте. Несколько месяцев спустя Дартмутский колледж приобрел собственный компьютер, заполняющий подвал GE-225, и 1 мая 1964 года в 4 часа утра была запущена первая БАЗОВАЯ программа. Наша историческая статья Kemeny & Kurtz — Изобретение БЕЙСИКА вдается в детали.
Хотя БЕЙСИК быстро стал популярным, он не пользовался всеобщим уважением. Это привлекло негативное внимание со стороны академического мира, когда первый и наиболее запомнившийся залп был произнесен Эдсгером Дейкстрой, одним из пионеров структурированного программирования, в своем письме «ГОТО считается вредным». Проще говоря, это утверждало, что студенты, которые научились программировать с помощью BASIC, были безвозвратно повреждены мозгом и никогда не могли изменить свои способы и выучить структурированный язык.
Так как же Microsoft вошла в эту историю? Именно в 1975 году был запущен в виде комплекта Altair, первый в истории персональный компьютер, хотя для того, чтобы этот термин был придуман, потребуется некоторое время. Увидев Altair на обложке журнала Popular Electronics, Билл Гейтс позвонил Эду Робертсу, чья компания Micro Instrumentation and Telemetry Systems (MITS) производила комплекты Altair, и заявил, что у него уже есть версия BASIC для микропроцессора 8080 и что он готов заняться бизнесом. Единственной частью утверждения, которая была правдой, было желание получить контракт на это. Девятнадцатилетний Гейтс и его партнер Пол Аллен, старший по возрасту, даже не имели доступа к 8080, но в возрасте 13 лет Гейтс написал БАЗОВЫЙ интерпретатор для PHP-10, и для продвижения проекта они приступили к написанию симулятора 8080 для PDP-10. Для остальной части этой части истории см. Билла Гейтса — До того, как Он стал Знаменитым.
Следующим шагом на этом пути стало то, что IBM, все еще считавшаяся международной бизнес-машиной и до тех пор производителем линейки родословных мэйнфреймов, поручила Microsoft написать операционную систему для Project Chess, своего спекулятивного предприятия в мире персональных компьютеров. Наряду с PC-DOS, специфичная для IBM версия того, что более широко известно как MS-DOS, была версией базового интерпретатора Microsoft, который был в двух версиях, в ПЗУ и на диске. В то время как все, включая Рича Тернера в блоге Microsoft, объявляющем об открытом источнике GW-BASIC, называют это «базовой версией IBM», вы должны помнить, что она, как и более поздняя версия GW-BASIC, была еще одной версией интерпретатора BASIC Билла Гейтса, первоначально написанной на PDP-10, см. Уведомление об авторских правах, опубликованное на GitHub только сегодня!
Есть какая-то тайна в названии GW-BASIC. Его часто называют Gee-Whizz BASIC, однако есть и другие возможности. Грег Уиттен, работавший над БАЗОВОЙ линейкой компиляторов Microsoft’s с 1979 по 1988 год и ставший главным архитектором программного обеспечения, написал в 2005 году:
«Имя GW было выбрано Биллом Гейтсом. Он единственный, кто знает, был ли это Джи-Уиз или после меня, потому что он использовался в обоих направлениях.»
Другая возможность заключается в том, что G-W может быть Гейтсом-Уиттеном, признающим вклад обоих мужчин, или даже Гейтсом-Уильямом, сохраняющим славу для себя. Однако к 1983 году Билл прочно утвердился в качестве имени Гейтса.
Как бы он ни назывался, GW-BASIC был языком, который был популярен для изучения компьютерного программирования, пока его не заменил QBasic, интерпретатор, входящий в состав QuickBASIC Microsoft с выпуском MS-DOS 5.0 в 1991 году, и многие люди, которые использовали его, были рады иметь его с открытым исходным кодом, хотя то, что было доступно, не включает скрипты сборки, файлы makefile или инструменты, необходимые для создания исполняемых двоичных файлов, а также не содержит каких-либо готовых двоичных файлов / исполняемых файлов.
Назовите нас неблагодарными, но можем ли мы просто повторить просьбу, впервые сделанную в 2011 году, когда Visual Basic достиг своего 20-летия, а затем повторенную 5 лет спустя, в мае 2016 года, в день своего 25-летия, о том, чтобы VB-6, последняя из линейки pre .NET basics, была с открытым исходным кодом. Эта идея была решительно отвергнута четыре года назад, но с тех пор много воды утекло, в том числе Microsoft имеет большое присутствие в открытом исходном коде в качестве владельца GitHub. Поэтому, пожалуйста, Microsoft, поставьте VB-6 на GitHub, и пусть сообщество даст ему новую жизнь, которую он заслуживает.