Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
thinBasic — это интерпретатор языка программирования, похожего на BASIC, с центральной архитектурой ядра, окруженного множеством специализированных модулей. Изначально разработанный главным образом для автоматизации компьютеров, благодаря своей модульной структуре он может применяться для широкого круга задач.
thinBasic is a BASIC like computer programming language interpreter with a central core engine architecture surrounded by many specialized modules. Although originally designed mainly for computer automation, thanks to its modular structure it can be used for wide range of tasks.
Привязка к API третьих сторон
ThinBASIC поддерживает вызов функций из сторонних DLL; программисту необходимо предварительно объявить их, чтобы получить доступ к их функциональности. Благодаря этому механизму, thinBASIC позволяет использовать такие технологии, как OpenGL, OpenCL, XML, ODE и многие другие.
ThinBASIC supports calling functions from third party DLLs; programmer needs to declare them first to be able to access the functionality. Thanks to this mechanism, thinBASIC allows using technologies such as OpenGL, OpenCL, XML, ODE and many others.
Настройка
Язык может быть расширен за счет разработки модулей с использованием SDK для различных языков программирования (PowerBASIC, FreeBASIC, C, MASM).
The language can be enhanced by module development using SDK for many languages (PowerBASIC, FreeBASIC, C, MASM).
Документация
Команда разработчиков уделяет большое внимание документированию языка и учебным материалам. Сам язык подробно документирован в обширном справочном файле, а стандартная установка включает в себя учебное пособие и множество примеров кода. Различные статьи по использованию thinBASIC публиковались в журнале ThinBasic Journal, а также на главной странице языка программирования (см. внешние ссылки).
The development team puts strong focus on documentation of the language and on the learning resources. The language itself is documented in extensive help file and the default installation contains tutorial and much example code too. Various articles on use of thinBASIC have been published in form of ThinBasic Journal and on the homepage of the programming language as well (please see external links).
Плюсы и минусы
ThinBASIC был разработан для платформы Windows, и именно поэтому он эффективно использует ресурсы этой системы, такие как реестр, пользовательский интерфейс, работа с процессами, COM, DLL. Несмотря на то, что это интерпретируемый язык, thinBASIC обычно отличается высокой скоростью выполнения. Когда интерпретируемая природа языка становится ограничивающим фактором, можно применить оптимизации с помощью частичной JIT-компиляции. Еще одним преимуществом языка является широкий набор команд, охватывающих различные области применения, а также традиционно сильная для BASIC поддержка работы со строками. Язык находится в постоянной разработке и поддержке. Ограничение thinBASIC платформой Windows может быть недостатком для тех, кто ищет кроссплатформенные инструменты. Скорость выполнения без оптимизаций ниже, чем у скомпилированного кода, что обусловлено интерпретируемой природой языка.
ThinBASIC was designed for the Windows platform and this is why it makes a good use of resources provided by this system, such as registry, user interface, work with processes, COM, DLLs. Although interpreted, thinBASIC is considered to have usually fast execution. When the interpreter nature of the language hits the limits, it is possible to perform optimizations using partial JIT compilation. Another strength of the language is a wide range of commands covering various areas of interest and for BASIC traditionally strong focus on string handling. The language is under continuous development and maintenance. The fact that thinBASIC is designed for Windows only can be seen as disadvantage as well, for those who seek cross platform tools. The speed of execution without the use of optimizations is lower compared to output of compilers, thanks to language interpreter nature.