stringtranslate.com

БудущееBASIC

FutureBasicбесплатный компилятор BASIC для Macintosh от Apple Inc.

Он состоит из интегрированной среды разработки (IDE), редактора, менеджера проектов и т. д. как для микропроцессоров PowerPC , так и для Intel . С 1 января 2008 года в пакет включен транслятор FBtoC, который преобразует синтаксис FutureBasic в C и автоматически вызывает коллекцию компиляторов GNU Apple (gcc). Никаких знаний C не требуется. FutureBasic поддерживает доступ к вызовам библиотеки Mac OS .

История

FutureBASIC (FB) начал свою жизнь в середине 1980-х годов [1] как ZBasic , который был создан Эндрю Гариепи и задумывался как кроссплатформенная система разработки. Вскоре от кроссплатформенных аспектов отказались в пользу разработки для Macintosh. ZBasic приобрел преданных поклонников среди разработчиков, которые хвалили его простоту использования и компактный и быстрый код, создаваемый компилятором (легендарный труд, включающий широкое использование вручную созданного кода на языке ассемблера размером 68 КБ). В 1992 году, в качестве следующего важного шага после ZBasic версии 5 [2] , Zedcor Inc., компания братьев Гариепи Энди, Майка, Питера и друзей, базирующаяся в Тусоне , штат Аризона, представила FutureBASIC (позже названный FBI). [3] В 1995 году Staz Software, [4] под руководством Криса Стасни, приобрела права на рынок FutureBASIC. Крис Стэсни начал этот бизнес с обновленной версии, а именно FBII, [5] и своей собственной разработки Program Generator [6] (PG PRO), CASE-инструмента.

Переход от 68k к центральному процессору (ЦП) PowerPC был длительным процессом, который включал полное переписывание редактора Крисом Стэсни и адаптацию компилятора Энди Гариепи. Результатом их усилий стала значительно улучшенная IDE под названием FB^3 [7] , выпущенная в сентябре 1999 года [8] и включающая, среди прочего, отдельное приложение-компилятор, различные открытые и, следовательно, модифицируемые среды выполнения, [9] встроенную ассемблерную систему PPC. , упрощенный доступ к интерфейсу прикладного программирования (API) Macintosh Toolbox, а также расширенная библиотека встроенных функций. В основных выпусках обновлений появилась полнофункциональная среда выполнения Appearance Compliant [10] , написанная Робертом Пёрвсом, а также соответствие создаваемых приложений требованиям Carbon . Когда-то интегрированная среда разработки FutureBASIC (FB IDE) была полностью преобразована для работы на Mac OS X и называлась FB4 и впервые была выпущена в июле 2004 года.

Компания Staz Software , базирующаяся в Даймондхеде , штат Миссисипи , сильно пострадала от урагана Катрина в августе 2005 года, и темпы разработки замедлились в то время, когда требовались серьезные усилия для поддержания IDE в курсе эволюции Apple в сторону Macintosh на базе Intel.

В 2007 году независимая группа программистов-добровольцев FB, известная как команда FBtoC, разработала транслятор (FBtoC), который позволяет FB генерировать приложения в виде универсальных двоичных файлов с помощью компилятора GCC с открытым исходным кодом , который включен в каждую копию Apple Mac. Системное программное обеспечение OS X.

1 января 2008 года Staz Software объявила, что отныне FB будет бесплатным, и стал доступен FB4 с FBtoC 1.0. [11]

Поддержка процессоров и операционных систем

Системные требования для исходной версии Macintosh: Motorola 68000. Системные требования для создания универсальных двоичных файлов с помощью FBtoC: Mac OS X v10.4 или выше, GCC 4.0 или выше, а также должны быть установлены SDK для перекрестной разработки.

Синтаксис

Синтаксис FutureBasic поддерживает процедурные , модульные стили программирования с использованием вызовов функций и локальных переменных .

Ход программы и структурные блоки

Пользовательские функции (также известные как ЛОКАЛЬНЫЕ FN в FutureBasic) во многом похожи на функции C или Pascal .

Определенные структуры (ENTERPROC/EXITPROC) используются для процедур обратного вызова при вызове Macintosh Toolbox .

Язык предоставляет программисту полный набор векторов для приложений, управляемых событиями, таких как ON MENU, ON MOUSE, ON DIALOG, ON APPLEEVENT, ON EDIT, ON TIMER и т. д.

Другие структурированные ключевые слова включают условные блоки, такие как:

Устаревшие команды языка BASIC, такие как GOTO и GOSUB /RETURN с номерами строк и метками, хотя и не рекомендуются, но поддерживаются в образовательных целях.

Ниже приведен пример простой программы для ввода числа и отображения «Hello World».

//Пример программы FutureBasicdim i,num,a$ //Это наши переменныеокно 1 //открываем стандартное окноввод «Количество петель»; a$ //БАЗОВЫЙ ввод от пользователяnum=val(a$) //конвертируем текст в числоlong if num>0 //Структурированный ЕСЛИ for i = 1 to num //БАЗОВЫЙ цикл напечатайте «привет, мир» //выводим текст следующий я //конец цикла xelse //Иначе напечатайте «Не сегодня» //номер не введенконец, еслиdo //Подождем, пока Apple-Q Обработка событийдо ( gFBQuit ) //чтобы мы могли увидеть результаты

Типы данных

FutureBasic поддерживает сложные типы данных, включая плавающие точки одинарной и двойной точности , целые числа двойной длины, массивы, строки и записи (аналогично структурам в C). Следует отметить структуры массивов DYNAMIC (размер занимаемой памяти увеличивается только при их использовании), включая массивы строк DYNAMIC, называемые INDEX$, и переменные-контейнеры, которые могут выполнять строковые операции с потоками данных размером до 2 ГБ.

C и Pascal заимствовали стили кодирования.

Комментирование в коде является существенным, позволяя использовать операторы REMark и /* remark */операторы стиля C. Разделы кода можно добавить в закладки для удобства использования.

Другой альтернативный синтаксис, заимствованный из C, позволяет использовать такие операторы, как ++ -- == != += -= || &&.

Символы в строках Pascal доступны так же, как и элементы массива: a$[0](длина в байтах); a$[1](первый символ строки a$).

Хотя язык FutureBasic по-прежнему поддерживает типизацию переменных в старом стиле с суффиксными идентификаторами, он предоставляет современную альтернативу с предложением as: ; , ; и т. д.dim b as bytedim s as shortdim l as long

Мосты к другим языкам

маршрут  _toAppleScript  print  «верните мне путь в виде строки»  маршрут  _toScreenlong  if  usr  ApplescriptRun (  message $  )  =  _noErr  напечатать  сообщение $  end  if
// распечатываем календарь на 2009 год открыть «UNIX», 1, «кал 2009»тусклый $ делать линейный вход №1, а$ напечатайте $ до конца(1) закрыть 1
BeginCFunction // Простая функция C для сложения двух целых чисел long simple_add ( long a , long b ) { long sum ; сумма = а + б ; возврат ( сумма ); } КонецC                 // Определить функцию C, чтобы FB мог видеть ее. Панель инструментов fn simple_add ( long a , long b ) = long          // Создаем небольшую программу для сложения 2 + 2 с помощью функции Cокно 1 напечатайте fn simple_add ( 2 , 2 )      делайте HandleEvents до тех пор, пока ( gFBQuit )   

Ограничения

FutureBasic поддерживает архитектуру Macintosh Intel, но не компилируется ни под какую версию Microsoft Windows. [1] и см. нижнюю часть страницы: [2]

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

  1. ^ Индекс brilorsoftware.com
  2. ^ "Точка запуска Futurebasic Group" .
  1. ^ История базовых войн на платформе Mac Джонатана Хойла для MacCompanion, часть I MacCompanion, часть II
  2. ^ ZBasic 5, рецензия Дэйва Келли для журнала MacTech
  3. ^ ФБР внесло серьезные улучшения в язык BASIC, поощряя разработчиков использовать именованные константы и локальные функции вместо подпрограмм для более структурированных программ и многократного использования кода.
  4. ^ Дом Staz Software,inc.
  5. ^ FBII был 32-битным и мог работать с Mac 128 на Macintosh на базе G5 в эмулируемом режиме.
  6. ^ Program Generator — это инструмент быстрой разработки приложений , достаточно гибкий для быстрого создания сложных приложений для сред Macintosh, предшествующих Mac OS X. Для Mac OS X, программ, совместимых с внешним видом, FutureBASIC использует Apple Interface Builder .
  7. ^ произносится как FB в кубе.
  8. ^ Неделю спустя было выпущено европейское издание, включающее английский, итальянский, немецкий (сейчас прекращено) и французский язык. Архивировано 15 июля 2011 г. в языковых версиях Wayback Machine . Существует также издание на японском языке.
  9. ^ Начиная с FB^3, среда выполнения состоит из включаемых файлов, написанных на FutureBASIC, которые компилируются вместе с исходным кодом, написанным программистом. Он содержит различные объявления структур, констант, глобальных переменных, ресурсов, функций и процедур, составляющих язык FutureBASIC. Основными средами выполнения являются: Standard BASIC , Appearance Compliant и Mac Toolbox .
  10. ^ Среда выполнения Appearance Compliant обеспечивает доступ к большинству функций Apple Appearance Manager .
  11. ^ «Добро пожаловать в проект FBtoC и бесплатное программное обеспечение FutureBasic» . www.4toc.com . nd Архивировано из оригинала 13 сентября 2019 года.