stringtranslate.com

БАЗОВЫЙ

BASIC ( Универсальный код символьных инструкций для начинающих ) [1] — это семейство языков программирования общего назначения высокого уровня , разработанных для простоты использования. Первоначальная версия была создана Джоном Г. Кемени и Томасом Э. Курцем в Дартмутском колледже в 1963 году. Они хотели дать возможность студентам ненаучных специальностей использовать компьютеры. В то время почти все компьютеры требовали написания специального программного обеспечения, которое, как правило, изучали только ученые и математики .

В дополнение к языку программирования Кемени и Курц разработали Дартмутскую систему разделения времени (DTSS), которая позволяла нескольким пользователям одновременно редактировать и запускать программы BASIC на удаленных терминалах. Эта общая модель стала популярной в миникомпьютерных системах, таких как PDP-11 и Data General Nova, в конце 1960-х и начале 1970-х годов. Hewlett-Packard выпустила целую линейку компьютеров для этого метода работы, представив серию HP2000 в конце 1960-х годов и продолжив продажи до 1980-х годов. Многие ранние видеоигры ведут свою историю от одной из этих версий BASIC.

Появление микрокомпьютеров в середине 1970-х годов привело к развитию нескольких диалектов BASIC, включая Microsoft BASIC в 1975 году. Из-за крошечной оперативной памяти , доступной на этих машинах, часто 4 КБ, также были созданы различные диалекты Tiny BASIC . BASIC был доступен практически для любой системы того времени и стал де-факто языком программирования для домашних компьютерных систем, появившимся в конце 1970-х годов. На этих компьютерах почти всегда по умолчанию был установлен интерпретатор BASIC , часто в прошивке машины или иногда на картридже ПЗУ .

Популярность BASIC снизилась в 1990-х годах, когда на рынок вышли более мощные микрокомпьютеры и языки программирования с расширенными функциями (такие как Pascal и C ) стали пригодными для использования на таких компьютерах. В 1991 году Microsoft выпустила Visual Basic , объединив обновленную версию BASIC с построителем визуальных форм . Это возобновление использования языка и «VB» остается основным языком программирования [2] [3] в форме VB.NET , в то время как сцена любителей BASIC в более широком смысле продолжает существовать. [4] [5]

Источник

Джон Дж. Кемени был председателем математического факультета Дартмутского колледжа. Во многом благодаря его репутации новатора в преподавании математики, в 1959 году колледж получил награду Фонда Альфреда П. Слоана на сумму 500 000 долларов на строительство нового здания факультета. [6] Томас Э. Курц присоединился к кафедре в 1956 году, а с 1960-х годов Кемени и Курц пришли к единому мнению о необходимости повышения грамотности в области программирования среди студентов за пределами традиционных областей STEM . Позже Кемени отметил: «Наше видение заключалось в том, что каждый студент в кампусе должен иметь доступ к компьютеру , а любой преподаватель должен иметь возможность использовать компьютер в классе, когда это необходимо. Это было так просто». [7]

Кемени и Курц уже провели два предыдущих эксперимента с упрощенными языками: DARSIMCO (Дартмутский упрощенный код) и DOPE (Дартмутский эксперимент по сверхупрощенному программированию) . Они не прошли ни одного класса первокурсников. Последовали новые эксперименты с использованием Фортрана и Алгола , но Курц пришел к выводу, что эти языки слишком сложны для того, чего они хотели. Как заметил Курц, в Фортране было множество команд странной формы, в частности «почти невозможно запомнить соглашение для определения цикла : после номера строки требуется или нет?" [7]DO 100, I = 1, 10, 2

Более того, ключевой проблемой было отсутствие какой-либо немедленной обратной связи; машины той эпохи использовали пакетную обработку , и выполнение программы занимало много времени. Во время визита Курца в Массачусетский технологический институт Джон Маккарти предположил , что разделение времени предлагает решение; одна машина могла разделить время обработки между многими пользователями, создавая у них иллюзию того, что у них есть (медленный) компьютер. [8] Небольшие программы возвращали результаты через несколько секунд. Это привело к росту интереса к системе, использующей разделение времени, и новому языку, специально предназначенному для студентов, не изучающих STEM. [7]

Кемени написал первую версию Бейсика. Аббревиатура BASIC происходит от названия неопубликованной статьи Томаса Курца . [9] Новый язык во многом основан на FORTRAN II; операторы были однострочными, числа использовались для обозначения цели циклов и ветвей, а многие команды были похожи или идентичны Фортрану. Однако синтаксис был изменен везде, где его можно было улучшить. Например, трудный для запоминания DOцикл был заменен гораздо более простым для запоминания , а номер строки, используемый в DO, вместо этого обозначался . [a] Аналогичным образом, загадочное выражение Фортрана, синтаксис которого соответствовал конкретной инструкции машины, на которой оно было первоначально написано, стало более простым . Эти изменения сделали язык гораздо менее своеобразным, сохраняя при этом общую структуру и сходство с оригинальным FORTRAN. [7]FOR I = 1 TO 10 STEP 2NEXT IIFIF I=5 THEN GOTO 100

Проект получил грант в размере 300 000 долларов от Национального научного фонда , который был использован для приобретения компьютера GE-225 для обработки и процессора реального времени Datanet-30 для работы с телетайпами Teletype Model 33 , используемыми для ввода и вывода. Команда из дюжины студентов работала над проектом около года, написав как систему DTSS, так и компилятор BASIC. [7] Первая версия языка BASIC была выпущена 1 мая 1964 года. [10] [11]

Первоначально BASIC был сосредоточен на поддержке простой математической работы с поддержкой матричной арифметики с момента его первоначальной реализации в качестве пакетного языка, а к 1965 году была добавлена ​​функциональность символьных строк . Использование в университете быстро расширялось, требуя замены основного процессора на GE- 235, [7] и еще позже GE-635. К началу 1970-х годов к машинам в Дартмуте были подключены сотни терминалов, некоторые из них удаленно.

Желая, чтобы использование языка получило широкое распространение, его разработчики сделали компилятор доступным бесплатно. В 1960-х годах программное обеспечение стало платным товаром; до этого он предоставлялся бесплатно как услуга для дорогих компьютеров, которые обычно можно было только взять в аренду. Они также предоставили его средним школам в Ганновере , Нью-Гемпшире , а также на региональном уровне по всей Новой Англии с помощью телетайпных терминалов модели 33 и модели 35, подключенных к Дартмуту через телефонные линии с коммутируемым доступом, и приложили значительные усилия для продвижения языка. В последующие годы, когда появились другие диалекты BASIC, оригинальный диалект BASIC Кемени и Курца стал известен как Dartmouth BASIC .

Нью-Гэмпшир признал это достижение в 2019 году, когда в Ганновере установили исторический указатель на шоссе, описывающий создание «первого удобного для пользователя языка программирования». [12]

Распространение на сервисы разделения времени

Появление BASIC произошло как часть более широкого движения к системам разделения времени. Впервые задуманная в конце 1950-х годов, эта идея стала настолько доминирующей в компьютерной индустрии к началу 1960-х годов, что ее сторонники говорили о будущем, в котором пользователи будут «покупать время за компьютером почти так же, как среднестатистическое домохозяйство покупает электроэнергию и воду». от коммунальных предприятий». [13]

General Electric, работавшая над проектом в Дартмуте, написала собственную базовую операционную систему и запустила онлайн-систему разделения времени, известную как Mark I. В ней BASIC был одним из основных преимуществ. Другие компании в развивающейся области быстро последовали этому примеру; Tymshare представила SUPER BASIC в 1968 году, CompuServe имела версию на DEC-10 при запуске в 1969 году, а к началу 1970-х годов BASIC стал в значительной степени универсальным для мейнфреймов общего назначения . Даже IBM в конце концов присоединилась к клубу с выпуском VS-BASIC в 1973 году. [14]

Хотя службы разделения времени с помощью BASIC какое-то время были успешными, предсказанного ранее широкого успеха не произошло. Появление миникомпьютеров в тот же период, и особенно недорогих микрокомпьютеров в середине 1970-х годов, позволило любому приобрести и запустить свои собственные системы, а не покупать время в Интернете, которое обычно оплачивается в долларах за минуту. [б] [15]

Распространение на миникомпьютерах

Система HP 2000 была разработана для выполнения основной задачи BASIC с разделением времени.

BASIC, будучи небольшим по своей природе, естественно подходил для портирования на рынок миникомпьютеров , который возник одновременно с услугами разделения времени. Эти машины имели небольшую оперативную память , возможно, всего 4 КБ в современной терминологии, [c] и не имели высокопроизводительного хранилища, такого как жесткие диски , что делает компиляторы практичными. В этих системах BASIC обычно реализовывался как интерпретатор, а не как компилятор из-за меньших требований к рабочей памяти. [д]

Особенно важным примером был HP Time-Shared BASIC , который, как и исходная система Дартмута, использовал два компьютера, работающих вместе, для реализации системы разделения времени. Первая, младшая машина серии HP 2100 , использовалась для управления пользовательским вводом, а также для сохранения и загрузки их программ на ленту или диск. Другая, высокопроизводительная версия той же базовой машины, запускала программы и генерировала выходные данные. За сумму около 100 000 долларов можно было приобрести машину, на которой одновременно могут работать от 16 до 32 пользователей. [16] Система, известная как HP 2000, была первой мини-платформой, предлагающей разделение времени, и имела немедленный ошеломительный успех, благодаря чему HP стала третьим по величине поставщиком в области миникомпьютеров после DEC и Data General (DG). ). [17]

DEC, лидер в области миникомпьютеров с середины 1960-х годов, поначалу игнорировала BASIC. Это произошло благодаря их работе с RAND Corporation , которая приобрела PDP-6 для запуска своего языка JOSS , который концептуально был очень похож на BASIC. [18] Это побудило DEC представить уменьшенную, очищенную версию JOSS, известную как FOCAL , которую они активно продвигали в конце 1960-х годов. Однако, поскольку системы с разделением времени широко предлагали BASIC, а все конкуренты в области миникомпьютеров делали то же самое, клиенты DEC требовали BASIC. После того, как руководство неоднократно игнорировало их просьбы, Дэвид Х. Ал взял на себя задачу купить BASIC для PDP-8 , что имело большой успех на рынке образовательных услуг. К началу 1970-х годов о FOCAL и JOSS забыли, а BASIC стал почти универсальным на рынке миникомпьютеров. [19] Компания DEC представила обновленную версию BASIC-PLUS для использования в операционной системе с разделением времени RSTS/E .

В этот период на BASIC было написано несколько простых текстовых игр , в первую очередь Star Trek Майка Мэйфилда . Дэвид Аль собрал их, некоторые из них были перенесены из FOCAL, и опубликовал их в составленном им образовательном бюллетене. Позже он собрал некоторые из них в книгу « 101 BASIC Computer Games» , опубликованную в 1973 году. [20] В тот же период Аль участвовал в создании небольшого компьютера для образовательных целей, первого персонального компьютера . Когда руководство отказалось поддержать эту концепцию, Аль покинул DEC в 1974 году, чтобы основать основополагающий компьютерный журнал Creative Computing . Книга оставалась популярной и несколько раз переиздавалась. [21]

Взрывной рост: эра домашних компьютеров

Commodore BASIC v2.0 на Commodore 64
MSX БЕЙСИК версии 3.0
«Тренируйся Basic каждый день!» — гласит плакат (внизу в центре) в русской школе (ок. 1985–1986 гг.).

Появление первых микрокомпьютеров в середине 1970-х годов положило начало бурному росту BASIC. Его преимущество заключалось в том, что он был довольно хорошо известен молодым дизайнерам и любителям компьютеров, которые интересовались микрокомпьютерами, многие из которых видели BASIC на мини- или мэйнфреймах. Несмотря на знаменитое суждение Дейкстры , сделанное в 1975 году: «Практически невозможно научить хорошему программированию студентов, которые ранее имели дело с BASIC: будучи потенциальными программистами, они морально искалечены без всякой надежды на восстановление» [22] BASIC был одним из Несколько языков, которые были одновременно достаточно высокоуровневыми, чтобы их могли использовать люди без подготовки, и достаточно маленькими, чтобы вписаться в микрокомпьютеры того времени, что делало его де-факто стандартным языком программирования на ранних микрокомпьютерах.

Первая версия BASIC для микрокомпьютеров была написана совместно Биллом Гейтсом , Полом Алленом и Монте Давидоффом для их недавно созданной компании Micro-Soft. [23] Он был выпущен MITS в формате перфоленты для Altair 8800 вскоре после появления самой машины, [24] сразу же закрепив BASIC в качестве основного языка ранних микрокомпьютеров. Члены Домашнего компьютерного клуба начали распространять копии программы, в результате чего Гейтс написал свое «Открытое письмо любителям» , жалуясь на этот ранний пример программного пиратства .

Частично в ответ на письмо Гейтса, а частично для того, чтобы сделать BASIC еще меньшего размера, который можно было бы эффективно использовать на машинах с памятью 4 КБ, [e] Боб Альбрехт призвал Денниса Эллисона написать свой собственный вариант языка. Как спроектировать и реализовать урезанную версию интерпретатора языка BASIC, было описано в статьях Эллисона в первых трех ежеквартальных выпусках информационного бюллетеня People's Computer Company , опубликованном в 1975 году, а также в реализациях с исходным кодом, опубликованных в журнале доктора Добба. Tiny BASIC Художественная гимнастика и ортодонтия: бегущий свет без лишнего байта . Это привело к появлению широкого разнообразия Tiny BASIC с дополнительными функциями или другими улучшениями, причем особенно известными стали версии Тома Питтмана и Ли-Чен Ванга . [25]

Micro-Soft, к этому времени Microsoft , портировала свой интерпретатор для MOS 6502 , который быстро стал одним из самых популярных микропроцессоров 8-битной эпохи. Когда начали появляться новые микрокомпьютеры, особенно «троица 1977 года» TRS -80 , Commodore PET и Apple II , они либо включали версию кода MS, либо быстро вводили с ней новые модели. В то время к этой тенденции присоединились и персональные компьютеры Ohio Scientific . К 1978 году MS BASIC стал стандартом де-факто , и практически каждый домашний компьютер 1980-х годов включал его в ПЗУ . При загрузке был представлен интерпретатор BASIC в прямом режиме .

Commodore Business Machines включала Commodore BASIC , основанный на Microsoft BASIC. У Apple II и TRS-80 было по две версии BASIC: меньшая начальная версия, представленная с первоначальными выпусками машин, и версия на базе MS, представленная по мере роста интереса к платформам. По мере того, как на рынок выходили новые компании, добавлялись дополнительные версии, которые слегка изменили семейство BASIC. Семейство 8-битных систем Atari имело собственный Atari BASIC , модифицированный для установки на картридж ПЗУ емкостью 8 КБ . Sinclair BASIC был представлен в 1980 году с Sinclair ZX80 , а позже был расширен для Sinclair ZX81 и Sinclair ZX Spectrum . BBC опубликовала BBC BASIC , разработанный Acorn Computers Ltd , включающий множество дополнительных ключевых слов структурированного программирования и расширенные функции операций с плавающей запятой.

По мере роста популярности BASIC в этот период компьютерные журналы публиковали полный исходный код BASIC для видеоигр, утилит и других программ. Учитывая простоту BASIC, было несложно ввести код из журнала и выполнить программу. В различных журналах публиковались программы для конкретных компьютеров, хотя некоторые программы BASIC считались универсальными и могли использоваться на машинах, работающих под управлением любого варианта BASIC (иногда с небольшими изменениями). Также было доступно множество книг о программах ввода, и, в частности, Аль опубликовал версии оригинальной 101 игры BASIC, преобразованной в диалект Microsoft, и опубликовал ее из Creative Computing как BASIC Computer Games . В этой книге и ее продолжениях представлены сотни готовых программ, которые можно легко преобразовать практически под любую платформу, работающую на языке BASIC. [20] [26] [27] Книга поступила в магазины в 1978 году, когда только зарождался рынок домашних компьютеров , и стала первой компьютерной книгой, проданной миллионным тиражом. Более поздние пакеты, такие как «Научитесь программировать на BASIC», также будут включать игры в качестве вводного курса. На компьютерах CP/M , ориентированных на бизнес , которые вскоре получили широкое распространение в средах малого бизнеса, Microsoft BASIC ( MBASIC ) был одним из ведущих приложений. [28]

В 1978 году Дэвид Лиен опубликовал первое издание « Справочника по BASIC: энциклопедия компьютерного языка BASIC» , в котором описаны ключевые слова на более чем 78 различных компьютерах. К 1981 году второе издание задокументировало ключевые слова с более чем 250 различных компьютеров, демонстрируя взрывной рост эпохи микрокомпьютеров. [29]

IBM PC и совместимые устройства

IBM Кассетный БЕЙСИК 1.10

Когда IBM разрабатывала IBM PC , они следовали парадигме существующих домашних компьютеров, имея встроенный интерпретатор BASIC. Они получили его от Microsoft — IBM Cassette BASIC — но Microsoft также выпустила несколько других версий BASIC для MS-DOS / PC DOS , включая IBM Disk BASIC (BASIC D), IBM BASICA (BASIC A), GW-BASIC (BASICA-совместимый версия, для которой не требовалось ПЗУ IBM) [30] и QBasic , которые обычно входили в комплект поставки машины. Кроме того, они выпустили компилятор Microsoft BASIC, предназначенный для профессиональных программистов. Издатель Turbo Pascal компания Borland опубликовала Turbo Basic 1.0 в 1985 году (последующие версии до сих пор продаются под названием PowerBASIC ). В Unix-подобных системах были созданы специализированные реализации, такие как XBasic и X11-Basic. [31] XBasic был портирован в Microsoft Windows как XBLite и кроссплатформенные варианты, такие как SmallBasic , yabasic , Bywater BASIC , [32] [33] nuBasic, [34] MyBasic, [35] Logic Basic, [36] Liberty BASIC и появился wxBasic . Между тем FutureBASIC и Chipmunk Basic нацелены на Apple Macintosh .

В этих более поздних вариантах появилось множество расширений, таких как улучшенная поддержка строк и графики, доступ к файловой системе и дополнительные типы данных . Более важными были средства структурного программирования , включая дополнительные структуры управления и соответствующие подпрограммы , поддерживающие локальные переменные . [37] Однако ко второй половине 1980-х годов пользователи все чаще использовали готовые приложения, написанные другими, а не изучали программирование самостоятельно; в то время как профессиональные программисты теперь имели широкий спектр более продвинутых языков, доступных на небольших компьютерах. C , а позже и C++ стали предпочтительными языками для профессиональной разработки приложений в термоусадочной упаковке . [38] [39]

Ниша, которую BASIC продолжал заполнять, была для любителей разработки видеоигр , поскольку системы создания игр и легкодоступные игровые движки все еще находились в зачаточном состоянии. У Atari ST для этой цели был STOS BASIC , а у AmigaAMOS BASIC . Microsoft впервые представила BASIC для разработки игр с DONKEY.BAS для GW-BASIC , а затем GORILLA.BAS и NIBBLES.BAS для Quick Basic . QBasic поддерживал активное сообщество разработчиков игр, [40] [41] которое позже помогло создать реализации QB64 и FreeBASIC . [42] В 2013 году в Steam была выпущена игра под названием Black Приложение , написанная на QBasic и скомпилированная с помощью QB64 для современных компьютеров . [43] [44] Blitz Basic , Dark Basic , SdlBasic , Super Game System Basic, [45] RCBasic, [46] PlayBASIC, [47] CoolBasic, [48] AllegroBASIC , [49] ethosBASIC, [50] NaaLaa, [ 51] GLBasic и Basic4GL еще больше удовлетворили этот спрос, вплоть до современных AppGameKit , [52] Monkey 2 и Cerberus-X. [53]

Visual Basic

В 1991 году Microsoft представила Visual Basic — эволюционное развитие QuickBASIC . Он включал конструкции из этого языка, такие как операторы управления с блочной структурой, параметризованные подпрограммы и необязательную статическую типизацию , а также объектно-ориентированные конструкции из других языков, таких как «With» и «For Each». Язык сохранил некоторую совместимость со своими предшественниками, такими как ключевое слово Dim для объявлений, операторы Gosub/Return и необязательные номера строк, которые можно было использовать для поиска ошибок. Важным стимулом для развития Visual Basic стал новый язык макросов для Microsoft Excel , программы работы с электронными таблицами . К удивлению многих сотрудников Microsoft, которые изначально позиционировали его как язык для любителей, этот язык стал широко использоваться для небольших бизнес-приложений вскоре после выпуска VB версии 3.0, которая широко считается первой относительно стабильной версией. Microsoft также выделила его как Visual Basic для приложений и Embedded Visual Basic .

Хотя многие продвинутые программисты все еще насмехались над его использованием, VB эффективно удовлетворял потребности малого бизнеса , поскольку к тому времени компьютеры под управлением Windows 3.1 стали достаточно быстрыми, чтобы многие бизнес-процессы можно было выполнять «в мгновение ока», даже используя «медленный» язык, пока не задействованы большие объемы данных. Многие владельцы малого бизнеса обнаружили, что могут за несколько вечеров создать свои собственные небольшие, но полезные приложения для удовлетворения своих специализированных потребностей. В конце концов, за долгое время существования VB3 знание Visual Basic стало востребованным навыком работы. Microsoft также выпустила VBScript в 1996 году и Visual Basic .NET в 2001 году. Последний имеет по существу те же возможности, что и C# и Java , но с синтаксисом, который отражает исходный язык Basic, а также обладает некоторой кроссплатформенностью благодаря таким реализациям, как Mono-Basic. . [54] IDE с ее событийно-ориентированным построителем графического пользовательского интерфейса также оказала влияние на другие инструменты, в первую очередь на Delphi для Object Pascal от Borland Software и на ее собственные потомки, такие как Lazarus . [55] [56]

Основная поддержка финальной версии 6.0 исходного Visual Basic закончилась 31 марта 2005 г., после чего в марте 2008 г. последовала расширенная поддержка . существуют, как Rubberduck и ModernVB. [59] 2 февраля 2017 г. Microsoft объявила, что разработка VB.NET больше не будет осуществляться параллельно с разработкой C#, [60] а 11 марта 2020 г. было объявлено, что эволюция языка VB.NET также завершилась. . [61] Несмотря на это, язык по-прежнему поддерживался [62] , и с тех пор было выпущено стороннее расширение Mercury . [63] Между тем, существуют конкуренты, такие как B4X , [64] RAD Basic, [65] TwinBASIC, [66] VisualFBEditor , [67] InForm , [68] Xojo , [69] и Gambas . [70]

Три современных варианта Basic: Mono Basic, OpenOffice.org Basic и Gambas.

Версии и диалекты после 1990 года

Многие другие диалекты BASIC также возникли с 1990 года, включая QB64 и FreeBASIC с открытым исходным кодом , вдохновленные QBasic, а также RapidQ , HBasic , Basic For Qt и Gambas в стиле Visual Basic . Современные коммерческие воплощения включают PureBasic , PowerBASIC , Xojo , Monkey X и True BASIC (прямой преемник Dartmouth BASIC от компании, контролируемой Курцем).

Сейчас также существует несколько простых веб-интерпретаторов BASIC, в том числе Small Basic от Microsoft и wwwBASIC от Google . [71] Также существует ряд компиляторов, преобразующих BASIC в JavaScript , [72] таких как JSBasic, который повторно реализует Applesoft BASIC , [73] Spider BASIC, [74] и NS Basic .

Опираясь на более ранние разработки, такие как Mobile Basic и CellularBASIC, [75] [76] многие диалекты теперь доступны для смартфонов и планшетов. В Apple App Store для iOS доступны варианты Hand BASIC, [77] Learn BASIC, [78] Smart Basic на основе Minimal BASIC , [79] Basic! от miSoft, [80] и BASIC от Анастасии Ковбы. [81] В магазине Google Play для Android тем временем представлены сенсорные Touch Basic, [82] B4A , RFO BASIC! [f] интерпретатор на основе Dartmouth Basic , [83] и адаптаций SmallBasic , BBC Basic , Tiny Basic , X11-Basic, [84] и NS Basic .

На игровых консолях приложение для Nintendo 3DS и Nintendo DSi под названием Petit Computer позволяет программировать на слегка модифицированной версии BASIC с поддержкой кнопок DS. Также была выпущена версия для Nintendo Switch , которая также поставлялась с версией Fuze Code System, [85] вариантом BASIC [86] , впервые реализованным как специальная машина Raspberry Pi . [87] Ранее BASIC был доступен на консолях как Family BASIC (для Nintendo Famicom ) и PSX Chipmunk Basic (для оригинальной PlayStation ), в то время как yabasic был портирован на PlayStation 2, а FreeBASIC — на исходный Xbox , а Dragon BASIC был создан для доморощенный вариант на Game Boy Advance и Nintendo DS . [88]

Калькуляторы

Варианты BASIC доступны на графических и других программируемых калькуляторах производства Texas Instruments ( TI-BASIC ), HP (HP BASIC), Casio ( Casio BASIC ) и других.

командная строка Windows

QBasic , версия Microsoft QuickBASIC без компоновщика для создания EXE-файлов, присутствует в потоках операционных систем Windows NT и DOS- Windows 95 и может быть получена для более поздних выпусков, таких как Windows 7 , в которых они отсутствуют. До DOS 5 базовым интерпретатором был GW-Basic . QuickBasic является частью серии из трех языков, выпущенных Microsoft для опытных пользователей дома и офиса, а также для небольших профессиональных разработок; Два других — QuickC и QuickPascal. Для Windows 95 и 98, в которых по умолчанию не установлен QBasic, их можно скопировать с установочного диска, на котором будет набор каталогов для старого и дополнительного программного обеспечения; другие недостающие команды, такие как Exe2Bin и другие, находятся в этих же каталогах.

Другой

BASIC появился в некоторых системах видеоигр, таких как Nintendo Famicom .

Различные офисные пакеты Microsoft, Lotus и Corel и сопутствующие продукты в той или иной форме программируются с помощью Visual Basic, включая LotusScript , который очень похож на VBA 6. Эмулятор терминала Host Explorer использует WWB в качестве языка макросов; или, в последнее время, программа и пакет, в котором она содержится, можно программировать в собственном базовом варианте, известном как Hummingbird Basic. Вариант VBScript используется для программирования веб-контента, Outlook 97, Internet Explorer и Windows Script Host. WSH также имеет движок Visual Basic для приложений (VBA), установленный в качестве третьего движка по умолчанию наряду с VBScript, JScript и многочисленными проприетарными движками или движками с открытым исходным кодом, которые можно установить, например PerlScript , несколько движков на основе Rexx, Python , Ruby, Tcl, Delphi, XLNT, PHP и другие; это означает, что две версии Basic можно использовать вместе с другими упомянутыми языками, а также LotusScript в файле WSF, через объектную модель компонента и другие конструкции WSH и VBA. VBScript — это один из языков, к которым могут получить доступ расширенные оболочки 4Dos, 4NT и Take Command. SaxBasic и WWB также очень похожи на линейку реализаций Visual Basic Basic. Язык макросов для Microsoft Word, предшествующий Office 97, известен как WordBASIC . Excel 4 и 5 используют сам Visual Basic в качестве языка макросов. Chipmunk Basic , интерпретатор старой школы, похожий на BASIC 1970-х годов, доступен для Linux , Microsoft Windows и macOS .

Наследие

Распространенность интерпретаторов BASIC на персональных компьютерах была настолько велика, что учебники когда-то включали простые упражнения «Попробуй на BASIC», которые побуждали учащихся экспериментировать с математическими и вычислительными концепциями на классных или домашних компьютерах. Популярные компьютерные журналы того времени обычно включали программы ввода текста .

Футурист и писатель-фантаст Дэвид Брин оплакивал утрату вездесущего BASIC в статье на Салоне 2006 года [89], как и другие, кто впервые использовал компьютеры в ту эпоху. В свою очередь, статья побудила Microsoft разработать и выпустить Small Basic ; [90] он также вдохновил на создание подобных проектов, таких как Basic-256 . [91] 1 мая 2014 года Дартмут провел празднование 50-летия BASIC, [92] как и другие организации; по крайней мере одна организация программистов VBA организовала празднование 35-летия в 1999 году. [93] [ нужен лучший источник ]

30 апреля 2014 года Дартмутский колледж отпраздновал 50-летие языка BASIC праздничным днем ​​[94]. К этому событию был снят короткометражный документальный фильм. [95]

Синтаксис

Типичные ключевые слова BASIC

Манипуляция данными

LET
присваивает значение (которое может быть результатом выражения ) переменной. В большинстве диалектов BASIC LETэто необязательно, и строка без другого идентифицируемого ключевого слова будет считаться ключевым словом LET.
DATA
содержит список значений, которые назначаются последовательно с помощью команды READ.
READ
считывает значение из DATAоператора и присваивает его переменной. Внутренний указатель отслеживает последний DATAпрочитанный элемент и перемещает его на одну позицию вперед с каждым READ. Большинство диалектов допускают использование нескольких переменных в качестве параметров, считывая несколько значений за одну операцию.
RESTORE
сбрасывает внутренний указатель на первый DATAоператор, позволяя программе начать READс первого значения. Многие диалекты допускают необязательный номер строки или порядковое значение, позволяющие сбросить указатель на выбранное место.
DIM
Устанавливает массив.

Управление потоком программы

IF ... THEN ... {ELSE}
используется для сравнения или принятия решений. Ранние диалекты допускали только номер строки после THEN, но более поздние версии позволяли следовать любому допустимому оператору. ELSEне получил широкой поддержки, особенно в более ранних версиях.
FOR ... TO ... {STEP} ... NEXT
повторить фрагмент кода заданное количество раз. Внутри цикла доступна переменная, действующая как счетчик, «индекс» .
WHILE ... WENDиREPEAT ... UNTIL
повторить раздел кода, пока указанное условие истинно. Условие может оцениваться перед каждой итерацией цикла или после нее. Обе эти команды встречаются в основном в более поздних диалектах.
DO ... LOOP {WHILE}или{UNTIL}
повторять раздел кода бесконечно или пока/пока указанное условие не станет истинным. Условие может оцениваться перед каждой итерацией цикла или после нее. Подобно WHILE, эти ключевые слова в основном встречаются в более поздних диалектах.
GOTO
переходит к пронумерованной или помеченной строке в программе. В большинстве диалектов также допускается форма GO TO.
GOSUB ... RETURN
переходит к пронумерованной или помеченной строке, выполняет найденный там код до тех пор, пока не достигнет RETURNкоманды, после чего возвращается к оператору, следующему за GOSUB, либо после двоеточия, либо на следующей строке. Это используется для реализации подпрограмм .
ON ... GOTO/GOSUB
выбирает, куда прыгнуть, исходя из заданных условий. Другие формы см. в инструкции Switch .
DEF FN
пара ключевых слов, введенная в начале 1960-х годов для определения функций. Исходные функции BASIC были смоделированы на основе однострочных функций FORTRAN. Функции BASIC представляли собой одно выражение с переменными аргументами, а не подпрограммы , с синтаксисом по образцу DEF FND(x) = x*xначала программы. Имена функций изначально ограничивались FN плюс одна буква, т. е . FNA, FNB...

Ввод и вывод

LIST
отображает полный исходный код текущей программы.
PRINT
отображает сообщение на экране или другом устройстве вывода.
INPUT
просит пользователя ввести значение переменной. Заявление может включать в себя сообщение с подсказкой.
TAB
используется с PRINTдля установки позиции, в которой следующий символ будет отображаться на экране или печататься на бумаге. ATэто альтернативная форма.
SPC
выводит несколько пробельных символов. По концепции аналогично, TABно перемещается на несколько дополнительных пробелов из текущего столбца, а не в указанный столбец.

Математические функции

ABS
Абсолютная величина
ATN
Арктангенс (результат в радианах )
COS
Косинус (аргумент в радианах )
EXP
Экспоненциальная функция
INT
Целочисленная часть (обычно функция пола )
LOG
Натуральный логарифм
RND
Генерация случайных чисел
SIN
Синус (аргумент в радианах )
SQR
Квадратный корень
TAN
Тангенс (аргумент в радианах )

Разнообразный

REM
содержит комментарий программиста или REMark; часто используется для названия программы и для определения назначения данного раздела кода.
USR(«Процедура, обслуживаемая пользователем»)
передает управление программой подпрограмме машинного языка , обычно вводимой в виде буквенно-цифровой строки или в списке операторов DATA.
CALL
альтернативная форма USRвстречается в некоторых диалектах. Не требует искусственного параметра для завершения функционального синтаксиса USRи имеет четко определенный метод вызова различных подпрограмм в памяти.
TRON/ TROFF
включает отображение номера каждой строки во время ее выполнения («TRAce ON»). Это было полезно для отладки или исправления проблем в программе. TROFF снова выключает его.
ASM
некоторые компиляторы, такие как Freebasic, [96] Purebasic, [97] и Powerbasic [98] , также поддерживают встроенный ассемблер , что позволяет программисту смешивать высокоуровневый и низкоуровневый код, обычно с префиксом «ASM» или «!» заявления.

Типы данных и переменные

Минимальные версии BASIC имели только целочисленные переменные и одно- или двухбуквенные имена переменных, что сводило к минимуму требования к ограниченной и дорогой памяти (ОЗУ). Более мощные версии имели арифметику с плавающей запятой, а переменные могли быть помечены именами длиной шесть и более символов. В ранних реализациях были некоторые проблемы и ограничения; например, Applesoft BASIC позволяла именам переменных иметь длину в несколько символов, но только первые два были значимыми, поэтому можно было случайно написать программу с переменными «LOSS» и «LOAN», которые будут рассматриваться как одинаковые; присвоение значения «LOAN» автоматически перезапишет значение, задуманное как «LOSS». Ключевые слова нельзя было использовать в переменных во многих ранних версиях BASIC; «SCORE» будет интерпретироваться как «SC» ИЛИ «E», где OR — ключевое слово. Во многих диалектах микрокомпьютеров строковые переменные обычно различаются наличием суффикса $ к их имени в качестве символа , а значения часто идентифицируются как строки, разделяясь «двойными кавычками». Массивы в BASIC могут содержать целые числа, переменные с плавающей запятой или строковые переменные.

Некоторые диалекты BASIC поддерживают матрицы и матричные операции , которые можно использовать для решения наборов одновременных линейных алгебраических уравнений. Эти диалекты будут напрямую поддерживать матричные операции, такие как присваивание, сложение, умножение (совместимых типов матриц) и вычисление определителя. Многие микрокомпьютерные BASIC не поддерживали этот тип данных; матричные операции все еще были возможны, но их нужно было явно запрограммировать для элементов массива.

Примеры

Простая игра, реализованная на BASIC.

Неструктурированный БЕЙСИК

Новые программисты BASIC на домашнем компьютере могут начать с простой программы, возможно, используя оператор PRINT языка для вывода сообщения на экран; хорошо известным и часто повторяемым примером является песня Кернигана и Ричи «Hello, World!» программа :

10 РАСПЕЧАТАЙТЕ «Привет, мир!» 20 КОНЕЦ   

Для заполнения дисплея сообщением можно использовать бесконечный цикл :

10 РАСПЕЧАТАЙТЕ «Привет, мир!» 20 ПЕРЕХОД К 10    

Обратите внимание, что этот ENDоператор необязателен и не выполняет никаких действий в большинстве диалектов BASIC. Он не всегда включался, как в этом примере. Эту же программу можно модифицировать для печати фиксированного количества сообщений, используя общий FOR...NEXTоператор:

10 LET N = 10 20 FOR I = 1 TO N 30 НАПЕЧАТАЙТЕ «Hello, World!» 40 СЛЕДУЮЩИЙ Я          

Большинство версий BASIC для домашних компьютеров, таких как MSX BASIC и GW-BASIC , поддерживали простые типы данных, циклы цикла и массивы. Следующий пример написан для GW-BASIC, но будет работать в большинстве версий BASIC с минимальными изменениями:

10 ВВОД «Как вас зовут: » ; U$ 20 РАСПРОСТРАНЯЙТЕ «Привет» ; 30 долларов США ВХОД «Сколько звезд вы хотите: » ; N 40 S$ = "" 50 FOR I = 1 TO N 60 S$ = S$ + "*" 70 NEXT I 80 PRINT S$ 90 INPUT "Хотите больше звезд?" ; A$ 100 IF LEN ( A$ ) = 0 THEN GOTO 90 110 A$ = LEFT$ ( A$ , 1 ) 120 IF A$ = "Y" ИЛИ A$ = "y" THEN GOTO 30 130 ПЕЧАТЬ "До свидания" ; 140 долларов США КОНЕЦ                                                        

В результате диалоговое окно может выглядеть так:

Как тебя зовут: МайкПривет МайкСколько звезд вы хотите: 7*******Хотите больше звезд? даСколько звезд вы хотите: 3***Хотите больше звезд? нетПрощай, Майк

Оригинальный вариант Dartmouth Basic отличался необычным наличием матричного ключевого слова MAT. [g] Хотя он не реализован в большинстве более поздних производных микропроцессоров, он используется в этом примере из руководства 1968 года [99] , где усредняются вводимые числа:

5 LET S = 0 10 MAT INPUT V 20 LET N = NUM ​​30 IF N = 0 THEN 99 40 FOR I = от 1 до N 45 LET S = S + V ( I ) 50 СЛЕДУЮЩИЙ I 60 ПЕЧАТЬ S / N 70 ПЕРЕХОД К 5 99 КОНЕЦ                                             

Структурированный БЕЙСИК

BASIC второго поколения (например, VAX Basic , SuperBASIC , True BASIC , QuickBASIC , BBC BASIC , Pick BASIC , PowerBASIC , Liberty BASIC , QB64 и (возможно) COMAL ) привнесли в язык ряд особенностей, в первую очередь связанных со структурированием и процедурно-ориентированное программирование. Обычно нумерация строк опускается в языке и заменяется метками (для GOTO ) и процедурами , чтобы обеспечить более простой и гибкий дизайн. [37] Кроме того, были введены ключевые слова и структуры для поддержки повторения, выбора и процедур с локальными переменными.

Следующий пример приведен в Microsoft QuickBASIC:

Пример REM QuickBASICОбъявление REM Forward — позволяет основному коду вызывать подпрограмму REM, которая определена позже в исходном коде DECLARE SUB PrintSomeStars ( StarCount! ).   REM Основная программа следует за INPUT "Как вас зовут: " , UserName$ PRINT "Привет" ; Имя пользователя$ DO INPUT "Сколько звезд вы хотите: " , NumStars CALL PrintSomeStars ( NumStars ) DO INPUT "Хотите больше звезд?" , Answer$ LOOP UNTIL Answer$ <> "" Answer$ = LEFT$ ( Answer$ , 1 ) LOOP WHILE UCASE$ ( Answer$ ) = "Y" PRINT "Goodbye" ; Имя пользователя$ КОНЕЦ                            Определение подпрограммы REM SUB PrintSomeStars ( StarCount ) REM Эта процедура использует локальную переменную Stars $ Stars$ = STRING$ ( StarCount , " *" ) PRINT Stars$ END SUB                  

Объектно-ориентированный Бейсик

Диалекты BASIC третьего поколения, такие как Visual Basic , Xojo , Gambas , StarOffice Basic , BlitzMax и PureBasic , представили функции для поддержки парадигмы объектно-ориентированного и событийно-ориентированного программирования . Большинство встроенных процедур и функций теперь представлены как методы стандартных объектов, а не как операторы . Кроме того, операционная система стала все более доступной для языка BASIC.

Следующий пример приведен в Visual Basic .NET :

Открытый модуль StarsProgram Частная функция Ask ( подсказка в виде строки ) В виде строки Console . Напишите ( подсказка ) Вернитесь в консоль . ReadLine () Конечная функция               Public Sub Main () Dim userName = Ask ( «Как вас зовут:» ) Console . WriteLine ( "Привет {0}" , имя пользователя )         Тусклый ответ в виде строки    Do Dim numStars = CInt ( Ask ( «Сколько звезд вы хотите:» )) Dim stars As New String ( «*»c , numStars ) Console . WriteLine ( звездочки )            Do ответ = Спросить ( «Хотите больше звезд?» ) Цикл До ответа <> «» Цикл Пока ответ . StartsWith ( "Y" , StringComparison . OrdinalIgnoreCase )             Консоль . WriteLine ( "Goodbye {0}" , имя пользователя ) End Sub End Module    

Стандарты

Компиляторы и интерпретаторы

Смотрите также

Примечания

  1. ^ В DO Фортрана для этой цели был continue, но все равно требовался ввод номера строки.
  2. ^ Tymshare взимала около 10 долларов США в час (что эквивалентно 75 долларам США в 2022 году) за доступ к своим системам.
  3. 12-битная память PDP-8, широко известная как первый «настоящий» мини, допускала 4096 адресов по 12 бит каждый, или 6144 байта.
  4. ^ Интерпретаторы в конечном итоге похожи на компиляторы в задачах, которые они выполняют (преобразование исходного кода в машинный код), но различаются тем, когда они это выполняют. Компиляторы преобразуют всю программу сразу и выводят отдельную работоспособную программу. Интерпретаторы обычно преобразуют за раз только одну строку (или даже ее часть), а затем сразу же освобождают этот код после завершения выполнения строки. Это означает, что им требуется только достаточно памяти для запуска одной строки и не требуется какая-либо высокопроизводительная вторичная память, например жесткий диск.
  5. ^ Microsoft BASIC оставил 780 байт свободными для кода пользовательской программы и значений переменных на машине 4K, и на ней работала урезанная версия, в которой не было строковых переменных и других функций.
  6. ^ Также известен просто как BASIC! и БАЗОВЫЙ! Суперпользователь
  7. ^ Начиная с версии 3.

Рекомендации

  1. ^ Кемени, Джон Г.; Курц, Томас Э. (1963). Basic: руководство по BASIC, элементарному алгебраическому языку, разработанному для использования с Дартмутской системой разделения времени (PDF) (1-е изд.). Ганновер, Нью-Хэмпшир: Вычислительный центр Дартмутского колледжа. Архивировано (PDF) из оригинала 9 октября 2022 г.
  2. Рамель, Дэвид (12 февраля 2019 г.). «Популярность VB.NET все еще растет». Журнал Visual Studio . Проверено 28 марта 2023 г.
  3. Сверски, Дэвид (25 января 2023 г.). «40 самых популярных языков программирования 2023 года: когда и как их использовать». Лучевая пушка . Проверено 25 марта 2023 г.
  4. Доказано, Лиам (28 марта 2023 г.). «Ностальгия по VB? BASIC совсем не мертв». Регистр . Проверено 27 сентября 2023 г.
  5. Босс, Крис (15 ноября 2022 г.). «BASIC не умер. Время развеять мифы о Basic». Код проекта . Проверено 31 января 2024 г.
  6. ^ «Высшая математика в Ганновере». Время . 23 февраля 1959 года.
  7. ^ Время abcdef 2014.
  8. ^ Рэнкин, Джой Лиси (2018), Народная история вычислений в Соединенных Штатах , Кембридж, Массачусетс: издательство Гарвардского университета, ISBN 9780674970977, п. 23
  9. ^ «БАЗОВЫЙ». Файл жаргона . Проверено 13 июня 2017 г.
  10. ^ «Томас Э. Курц - История языков компьютерного программирования» . cis-alumni.org . Проверено 13 июня 2017 г.
  11. Альфред, Рэнди (5 января 2008 г.). «1 мая 1964 года: запуск первой базовой программы». Проводной . Проверено 13 июня 2017 г.
  12. Брукс, Дэвид (11 июня 2019 г.). «Наконец-то исторический маркер, говорящий о чем-то важном». Монитор Конкорд . Архивировано из оригинала 11 июня 2019 года . Проверено 11 августа 2019 г.
  13. ^ Бауэр, В.Ф., Компьютерный дизайн с точки зрения программиста. Архивировано 23 июля 2016 г., на Wayback Machine (Восточная объединенная компьютерная конференция, декабрь 1958 г.). Одно из первых описаний компьютерного разделения времени.
  14. ^ «IBM против мира: вот как оно есть» . Компьютерный мир . 5 декабря 1973 года.
  15. ^ Борн, Чарльз; Хан, Труди Беллардо (август 2003 г.). История информационных онлайн-услуг, 1963–1976 гг. МТИ Пресс. п. 387. ИСБН 9780262261753.
  16. ^ «Система таймшера 2000 года» .
  17. ^ «Прохождение 10-летней отметки» . Журнал МЕРА . Hewlett Packard. Октябрь 1976 года.
  18. ^ Маркс, Ширли (декабрь 1971 г.). Годы JOSS: Размышления об эксперименте (PDF) (Технический отчет). Рэнд. Архивировано (PDF) из оригинала 9 октября 2022 г.
  19. ^ Савец, Кевин (апрель 2013 г.). «Дэйв Ал и Бетси Ал» (Интервью).
  20. ^ аб Ахль, Дэвид Х. (1973). 101 Базовая компьютерная игра. Морристаун, Нью-Джерси: Creative Computing Press. ОСЛК  896774158.
  21. Аль, Дэвид Х. (11 мая 1981 г.). "Компьютерные игры". Инфомир . Том. 3, нет. 9. с. 44. ISSN  0199-6649.
  22. Дейкстра, Эдсгер В. (18 июня 1975 г.). «Как нам говорить правду, которая может ранить» (PDF) . Избранные сочинения о вычислительной технике: личный взгляд. Springer-Verlag (опубликовано в 1982 г.). стр. 129–131. ISBN 978-0387906522. OCLC  693424350. Архивировано (PDF) из оригинала 9 октября 2022 года.
  23. Джонсон, Фил (21 января 2015 г.). «Обнаруживается исходный код Microsoft BASIC для 6502». Компьютерный мир . Проверено 24 октября 2022 г.
  24. ^ «У нас есть БЕЙСИК» . Музей естественной истории и науки Нью-Мексико . Архивировано из оригинала 30 ноября 2012 года . Проверено 18 апреля 2007 г.
  25. ^ Питтман, Том. «Чтобы получить его, нужно было заплатить 5 долларов вперед…». www.ittybittycomputers.com . Проверено 14 июня 2017 г.
  26. ^ Ахль, Дэвид Х. (1979). Более простые компьютерные игры. Морристаун: Creative Computing Press. ISBN 978-0894801372. ОКЛК  839377789.
  27. ^ Ахль, Дэвид Х. (1984). Большие компьютерные игры. Моррис Плейнс, Нью-Джерси: Creative Computing Press. ISBN 978-0916688400. ОСЛК  872675092.
  28. ^ "Осборн 1". сайт oldcomputers.net . Проверено 14 июня 2017 г.
  29. ^ Лиен, Дэвид (1981). БАЗОВЫЙ Справочник (Второе изд.). Сан-Диего, Калифорния: Издательство Compusoft. п. внутренняя крышка. ISBN 0-932760-00-7.
  30. ^ «Назад к БЕЙСИКАМ» . peyre.sqweebs.com . Архивировано из оригинала 26 октября 2009 года . Проверено 25 февраля 2023 г.
  31. Перр, Джон (1 января 2003 г.). «БАЗОВОЕ программирование в Unix». ЛинуксФокус . Проверено 26 сентября 2023 г.
  32. ^ "bwBASIC: Интерпретатор Bywater BASIC" . Блог ОСС . 25 августа 2018 г. Проверено 30 сентября 2023 г.
  33. Холл, Джим (23 июня 2021 г.). «Программа на FreeDOS с Bywater BASIC». Opensource.com . Проверено 30 сентября 2023 г.
  34. ^ Кальдероне, Антония. «Почему nuBASIC» . Проверено 30 сентября 2023 г.
  35. Сун, Лю Сюэ (12 октября 2003 г.). «MyBasic — интерпретатор языка Custom-BASIC, написанный на C++». Код проекта . Проверено 30 сентября 2023 г.
  36. ^ «LOGIC BASIC — Свободный язык программирования» . Проверено 7 октября 2023 г.
  37. ^ ab «Различия между GW-BASIC и QBasic». 12 мая 2003. Архивировано из оригинала 19 октября 2013 года . Проверено 28 июня 2008 г.
  38. ^ Правин, Джайн (2011). Класс Java. Пирсон Образовательная Индия. ISBN 9788131755440.
  39. ^ «GNE: язык программирования C» . fysh.org . Проверено 14 июня 2017 г. В 1980-х годах компиляторы C получили широкое распространение, и язык C стал чрезвычайно популярным.
  40. ^ Танцуй, Майкл. «Легко создавать игры Qbasic». Техвалла . Проверено 30 сентября 2023 г.
  41. ^ "Каталог игр QBasic" . Фаткод . Проверено 30 сентября 2023 г.
  42. ^ «Каталог игр FreeBASIC» . Бесплатный БЕЙСИК . Проверено 30 сентября 2023 г.
  43. Кочилова, Алекс (16 апреля 2013 г.). «Black Приложение — лучшая игра на QBASIC, которую вы когда-либо видели». Мир ПК . Проверено 30 сентября 2023 г.
  44. Серрелс, Марк (24 июня 2013 г.). «Австралиец, создавший видеоигру с использованием QBASIC». Котаку . Проверено 30 сентября 2023 г.
  45. ^ «Базовая система суперигр» . ИндиДБ . 21 ноября 2017 года . Проверено 30 сентября 2023 г.
  46. ^ "RC Basic" . МодБДБ . 18 августа 2015 года . Проверено 30 сентября 2023 г.
  47. ^ "PlayBasic". itch.io. _ Проверено 30 сентября 2023 г.
  48. ^ "CoolBasic". ИндиДБ . 6 декабря 2005 года . Проверено 30 сентября 2023 г.
  49. ^ "Домашняя страница AllegroBASIC" . АллегроБЕЙСИК . Архивировано из оригинала 15 ноября 2018 года . Проверено 7 октября 2023 г.
  50. ^ "Ethos Game Basic 1.3" . поделитесь приложением . Проверено 30 сентября 2023 г.
  51. ^ Феркало, Андрей (8 августа 2014 г.). «НааЛаа». Софтпедия . Проверено 1 октября 2023 г.
  52. ^ «Более внимательный взгляд на AppGameKit 2» . Игра с нуля . 12 июня 2015 г. Проверено 30 сентября 2023 г.
  53. ^ «Выпущен Cerberus X 10 августа 2018 г.» . Игра с нуля . 10 августа 2018 г. Проверено 30 сентября 2023 г.
  54. Кларк, Гэвин (21 февраля 2007 г.). «Прорыв Linux для разработчиков Visual Basic». Регистр . Проверено 1 октября 2023 г.
  55. Андерсон, Тим (14 февраля 2020 г.). «25 лет Delphi и никакого Oracle: не убийца Visual Basic, но его трудно убить». Регистр . Проверено 25 марта 2023 г. Введите Borland Delphi, который объединил Object Pascal с VB-подобным визуальным конструктором форм. Object Pascal был собственным языком Borland с полной поддержкой наследования. Он не чувствителен к регистру и не намного сложнее, чем VB, для кодирования, если вы привыкнете много вводить начало и конец (что примерно эквивалентно фигурным скобкам в C). В отличие от VB, здесь разумно используются разные операторы присваивания (:=) и сравнения (=).
  56. ^ Спид, Ричард (6 мая 2022 г.). «RAD Basic — Visual Basic 7, которого никогда не было — выпускает третью альфа-версию». Регистр . Проверено 26 марта 2023 г. Альтернативно, можно пережить дни целого соперничества BASIC/Pascal с Delphi-совместимым Lazarus.
  57. ^ «Рекомендации по жизненному циклу семейства продуктов для Visual Basic 6.0» . Msdn2.microsoft.com. 31 марта 2005 года . Проверено 16 июня 2009 г.
  58. Рамель, Дэвид (7 июля 2020 г.). «Индекс популярности: там держится классический Visual Basic». Журнал Visual Studio . Проверено 28 марта 2023 г.
  59. Рамель, Дэвид (28 февраля 2020 г.). «Возрождение Visual Basic? Проект направлен на то, чтобы перенести VBE в этот век!». Журнал Visual Studio . Проверено 28 марта 2023 г.
  60. Доминго, Майкл (13 июня 2017 г.). «Вива, Visual Basic! Или есть ли будущее у VB?». Журнал Visual Studio . Проверено 26 марта 2023 г.
  61. Рамель, Дэвид (12 марта 2020 г.). «Microsoft: «Мы не планируем развивать Visual Basic как язык»». Журнал Visual Studio . Проверено 26 марта 2023 г.
  62. Рамель, Дэвид (8 февраля 2023 г.). «Microsoft подтверждает судьбу Visual Basic». Журнал Visual Studio . Проверено 25 марта 2023 г.
  63. Рамель, Дэвид (25 августа 2020 г.). «Mercury — это новейшая разработка сторонних разработчиков Visual Basic: «мультиплатформенный VB++»». Журнал Visual Studio . Проверено 28 марта 2023 г.
  64. Рамель, Дэвид (18 августа 2015 г.). «B4J сохраняет жизнь классическому Visual Basic». Журнал Visual Studio . Проверено 26 марта 2023 г.
  65. ^ Спид, Ричард (6 мая 2021 г.). «Visual Basic 6 возвращается: вы весь год были хорошим разработчиком. Вы соблюдали социальную дистанцию, вы помогли своей маме. Вот ваша награда». Регистр . Проверено 26 марта 2023 г.
  66. Минхорст, Андре (1 апреля 2022 г.). «twinBASIC: Visual Basic для работы с файлами». Датенбанкентвиклер . Проверено 26 марта 2023 г.
  67. ^ Спид, Ричард (6 мая 2022 г.). «RAD Basic — Visual Basic 7, которого никогда не было — выпускает третью альфа-версию». Регистр . Проверено 26 марта 2023 г. RAD Basic — не единственная игра в городе. Альтернативы на разных стадиях разработки включают TwinBASIC, который также стремится обеспечить обратную совместимость с VB6 и VBA; и FreeBASIC, который реализует многое из того, что было в Microsoft QuickBASIC (и имеет изящную IDE в виде VisualFBEditor).
  68. Рогоз, Иван (7 апреля 2022 г.). «Взрыв из прошлого — QBasic 4.5». Барн Лаборатория . Проверено 26 сентября 2023 г. QB64 поставляется с WYSIWYG-редактором IDE под названием InForm, который приближает его к повседневному использованию в качестве быстрого и изящного языка автоматизации для Windows.
  69. ^ «Современная альтернатива Visual Basic». Ходзё . 19 мая 2013 года . Проверено 26 марта 2023 г.
  70. ^ Морган, Р. (29 июня 2014 г.). "Добро пожаловать". Журнал Гамбас . Архивировано из оригинала 8 апреля 2016 года.
  71. Уильямс, Эл (17 сентября 2018 г.). «По сути, это Интернет». Хакадей . Проверено 28 сентября 2023 г.
  72. Ветеану, Мариан (14 февраля 2017 г.). «Компиляторы JavaScript. Часть II: Языки, компилируемые в JavaScript». Код Мститель .
  73. Флауэр, Дэниел (20 января 2013 г.). «JSBasic — компилятор BASIC для JavaScript». Код проекта . Проверено 30 сентября 2023 г.
  74. Шнелл, Стефан (10 февраля 2016 г.). «Язык SpiderBasic (JavaScript) в контексте сервера веб-приложений SAP». SAP-блоги . Проверено 1 октября 2023 г.
  75. ^ «Java - Какие языки программирования ориентированы на J2ME» . iTecNote . Проверено 30 сентября 2023 г. Теперь я слышал о других языках, которые предположительно делают возможной разработку без использования Java, таких как CellularBASIC (который немного похож на QBASIC) и Hecl (который, кажется, основан на Tcl).
  76. ^ Телло, Гийом (15 декабря 2007 г.). «ЛГ КС 360». Архивировано из оригинала 28 октября 2010 года . Проверено 30 сентября 2023 г. После некоторых исследований в сети я наткнулся на этот сайт о CellularBASIC. Это полноценный интерпретатор BASIC, написанный на JAVA.
  77. ^ "Hand BASIC - Аромат CBM" . Appsftw . Проверено 1 октября 2023 г.
  78. ^ «Изучите базовое программирование для iOS» . CNET . Проверено 1 октября 2023 г.
  79. ^ "BASIC: язык программирования Николая Денисламова" . AppAgg . 26 января 2021 г. . Проверено 1 октября 2023 г.
  80. ^ «Базовый! В App Store». Apple.com . 5 мая 2019 г. Проверено 1 октября 2023 г.
  81. ^ «Базовый язык программирования для ПК». Приложение для Windows . Проверено 1 октября 2023 г.
  82. ^ Робинсон, Кертис. "О". Нажмите Базовый . Проверено 30 сентября 2023 г.
  83. Дарвин, Ян Ф. (10 мая 2017 г.). Поваренная книга Android: проблемы и решения для разработчиков Android. США: O'Reilly Media, Inc. п. 623. ИСБН 9781449374495.
  84. ^ Хоффманн, Маркус. «Х11-Базовый». Ф-Дроид . Проверено 30 сентября 2023 г.
  85. Миллер, Пол (19 июня 2017 г.). «Fuze Code Studio позволит детям использовать Switch для написания собственных игр для Switch». Грань . Проверено 30 сентября 2023 г.
  86. Портер, Мэтт (18 декабря 2015 г.). «Теперь дети могут вернуться к BASIC с помощью Fuze». Человек-гаджет . Проверено 30 сентября 2023 г.
  87. Бедфорд, Майк (21 октября 2015 г.). «Обзор FUZE на базе Raspberry Pi V2» . Человек-гаджет . Проверено 30 сентября 2023 г.
  88. ^ Хибики, Рёга. «Базовая документация Дракона». Академия.edu . Проверено 30 сентября 2023 г.
  89. Брин, Дэвид (14 сентября 2006 г.). «Почему Джонни не умеет программировать». Салон . Архивировано из оригинала 18 сентября 2013 года . Проверено 19 июня 2017 г.
  90. ^ «Маленький базовый». Сеть разработчиков Microsoft . Архивировано из оригинала 17 марта 2014 года . Проверено 19 июня 2017 г.
  91. ^ "Домашняя страница BASIC-256" . Прочтите статью «Почему Джонни не умеет программировать», которая вдохновила BASIC-256.
  92. ^ «Дартмут планирует празднование 50-летия компьютерного языка BASIC» . Лидер профсоюза Нью-Гэмпшира . 28 апреля 2014 года. Архивировано из оригинала 20 июня 2017 года . Проверено 14 июня 2017 г.
  93. ^ «50-летие BASIC – Поиск в Google» . Google .
  94. ^ «BASIC в 50 лет - Расписание мероприятий» . Дартмутский колледж . Проверено 14 июня 2017 г.
  95. ^ «БАЗОВЫЙ в 50 лет». Дартмутский колледж . Проверено 14 июня 2017 г.
  96. ^ "КейПгАсм" . FreeBasic Wiki . Проверено 2 августа 2017 г.
  97. ^ «Встроенный ASM x86» . Чистый базовый . Проверено 2 августа 2017 г.
  98. ^ «Использование языка ассемблера в вашем коде». Мощность базовая . Архивировано из оригинала 2 августа 2017 года . Проверено 2 августа 2017 г.
  99. ^ Кемени, Джон Г.; Курц, Томас Э. (январь 1968 г.). Basic: руководство по BASIC, элементарному алгебраическому языку, разработанному для использования с Дартмутской системой разделения времени (PDF) (4-е изд.). Ганновер, Нью-Хэмпшир: Вычислительный центр Дартмутского колледжа. п. 53. Архивировано (PDF) из оригинала 3 января 2014 г.
  100. ^ Джон Гейтвуд Хэм (2014). «Минимальный BASIC-компилятор ECMA-55 для Linux® x86-64». Компьютеры . 3 (3): 69–116. doi : 10.3390/computers3030069 . S2CID  40383760.
  101. ^ angros47 (29 июля 2013 г.). «ANSI Basic: соответствует ли стандарту FreeBasic?». freebasic.net . Архивировано из оригинала 28 сентября 2023 года.{{cite web}}: CS1 maint: числовые имена: список авторов ( ссылка )
  102. ^ Банчев, Бойко (2008). «Настоящий «Настоящий БЕЙСИК»». Институт математики и информатики . Архивировано из оригинала 13 марта 2011 года.

Общие ссылки

Внешние ссылки