Введение

thinBasic — это интерпретатор языка программирования, похожего на BASIC, с центральной архитектурой ядра, окруженного множеством специализированных модулей. Изначально разработанный главным образом для автоматизации компьютеров, благодаря своей модульной структуре он может применяться для широкого круга задач.

Привязка к API третьих сторон

ThinBASIC поддерживает вызов функций из сторонних DLL; программисту необходимо предварительно объявить их, чтобы получить доступ к их функциональности. Благодаря этому механизму, thinBASIC позволяет использовать такие технологии, как OpenGL, OpenCL, XML, ODE и многие другие.

Настройка

Язык может быть расширен за счет разработки модулей с использованием SDK для различных языков программирования (PowerBASIC, FreeBASIC, C, MASM).

Документация

Команда разработчиков уделяет большое внимание документированию языка и учебным материалам. Сам язык подробно документирован в обширном справочном файле, а стандартная установка включает в себя учебное пособие и множество примеров кода. Различные статьи по использованию thinBASIC публиковались в журнале ThinBasic Journal, а также на главной странице языка программирования (см. внешние ссылки).

Плюсы и минусы

ThinBASIC был разработан для платформы Windows, и именно поэтому он эффективно использует ресурсы этой системы, такие как реестр, пользовательский интерфейс, работа с процессами, COM, DLL. Несмотря на то, что это интерпретируемый язык, thinBASIC обычно отличается высокой скоростью выполнения. Когда интерпретируемая природа языка становится ограничивающим фактором, можно применить оптимизации с помощью частичной JIT-компиляции. Еще одним преимуществом языка является широкий набор команд, охватывающих различные области применения, а также традиционно сильная для BASIC поддержка работы со строками. Язык находится в постоянной разработке и поддержке. Ограничение thinBASIC платформой Windows может быть недостатком для тех, кто ищет кроссплатформенные инструменты. Скорость выполнения без оптимизаций ниже, чем у скомпилированного кода, что обусловлено интерпретируемой природой языка.