Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Liberty BASIC (LB) — это коммерческий язык программирования и интегрированная среда разработки (IDE). Он использует интерпретатор, разработанный на Smalltalk, который понимает собственный диалект языка BASIC. Он работает в 16- и 32-битных версиях Windows и OS/2.
Liberty BASIC (LB) is a commercial computer programming language and integrated development environment (IDE). It has an interpreter, developed in Smalltalk, which recognizes its own dialect of the BASIC programming language. It runs on 16 and 32 bit Windows and OS/2.
Предыстория
Liberty BASIC был написан Карлом "Ганнером" Гунделем и впервые опубликован его компанией Shoptalk Systems в 1991 году. С тех пор он постоянно совершенствовался. Последнее опубликованное обновление программного обеспечения, версия 4.5.1, вышло в июне 2018 года. Несмотря на некоторые ограничения в дизайне, затрудняющие продвинутое программирование, Liberty BASIC предоставляет начинающим интегрированную среду разработки (IDE) для пользователей Windows и OS/2 среднего и продвинутого уровня. Доступны динамические библиотеки (DLL). В текущей версии он работает только на Microsoft Windows и через Wine на Linux. В настоящее время ведется альфа-тестирование Liberty BASIC v5.0, с версиями, работающими на Microsoft Windows, Mac OS X, Linux и Raspberry Pi. Liberty BASIC не компилирует код в машинный. Вместо этого он компилирует код, написанный в IDE, в зашифрованный файл с расширением TKN. Этот файл затем выполняется EXE-файлом с тем же именем, хотя это может измениться с выходом версии 5.
Liberty BASIC was written by Carl "Gunner" Gundel and published in its first release by his company, Shoptalk Systems, in 1991. It has progressed steadily since then. The last published update to the software, version 4.5.1, was in June 2018. Though Liberty BASIC has its share of limitations in its design for advanced programming, it provides an introductory integrated development environment, IDE, for moderate to advanced users of Windows and OS/2. Dynamic link libraries (DLLs) are available. In its current version, it runs only on Microsoft Windows, and under Wine on Linux. Alpha testing of Liberty BASIC v5.0 is underway with versions that run on Microsoft Windows, Mac OS X, Linux and on the Raspberry Pi as well. Liberty BASIC does not compile to native code. Instead it compiles the code written in the IDE to an encrypted file with the extension TKN. This file is then executed by an EXE file that carries the same file name, although this may change with the release of version 5.
Известные программы, написанные на Liberty BASIC
FreeForm, графический редактор для создания форматов графического интерфейса, был написан на LB.
FreeForm, a GUI editor for creating GUI formats, was written in LB.
Альтернативные варианты реализации
GNU/Liberty Basic Compiler Collection (GLBCC), разработанная Энтони Лигуори, представляет собой набор инструментов для компиляции программ Liberty Basic, работающих в системах Windows и Linux, но проект не обновлялся с 2001 года. В 2012 году появилась альтернативная реализация Liberty BASIC для Windows – LB Booster (LBB). Хотя LBB в значительной степени совместим с синтаксисом языка Liberty BASIC 4, он был разработан полностью независимо Ричардом Расселом и написан на BBC BASIC. LBB обеспечивает (как правило) более высокую скорость выполнения, меньшие автономные исполняемые файлы и некоторые дополнительные возможности. Однако LBB не полностью совместим с LB4, и хотя многие программы будут работать без изменений, некоторые могут потребовать адаптации или даже оказаться непригодными для запуска под LBB. Liberty Basic не поддерживает объявление данных. Вместо этого любое новое имя данных рассматривается как новое объявление. Некоторые считают это преимуществом, другие – проблемой при отладке для тех, кто неаккуратно набирает текст. В 2019 году Питер Дж. Д. Мэтьюс разработал способ добавления объявлений и проверки на необъявленные данные без изменения кода, который видит интерпретатор LB. В 2023 году эта система была перенесена на GitHub в общедоступный репозиторий "LBPrePass" для всеобщего использования. Этот репозиторий также содержит документацию к программе. Программа написана на Liberty Basic 4.5.1 и предназначена для анализа кода, написанного на этой версии.
The GNU/Liberty Basic Compiler Collection (GLBCC), by Anthony Liguori, is a set of tools to compile Liberty Basic programs, runs on Windows and Linux systems, but the project has not been updated since 2001. In 2012 an alternative Windows implementation of Liberty BASIC, LB Booster (LBB), became available. Although substantially compatible with the Liberty BASIC 4 language syntax, LBB was developed entirely independently by Richard Russell and is written in BBC BASIC. LBB offers (typically) increased execution speed, smaller self contained executables and some additional capabilities. However LBB is not 100% compatible with LB4 and while many programs will run without modification, some may need to be adapted, or may even be unsuitable for running under LBB. Liberty Basic does not provide for data declarations. Instead any new data name is treated as a new declaration. Some regard this as a benefit, others see it as a debugging issue for imperfect typers. In 2019 Peter J. D. Matthews devised a method for adding declarations and checking for undeclared data without changing the code seen by the LB interpreter. In 2023 this system was ported to GitHub in public repository "LBPrePass" for anyone to use. This repository also contains program documentation. The program is written in Liberty Basic 4.5.1 and is intended to analyse 4.5.1 code.