FreeBASIC — язык программирования высокого уровня по синтаксису наиболее близкий к QuickBASIC, а также компилятор для него (FreeBASIC Compiler). Первоначально компилятор разрабатывался как свободная альтернатива Microsoft QuickBasic, но быстро оброс новыми возможностями и стал мощным средством разработки. Первые версии компилятора были написаны на Visual Basic, но теперь он может откомпилировать сам себя (написан
на FreeBASIC).
Компилятор
Транслятор языка компилирует тексты QBasic и FreeBASIC в 32-битные исполняемые модули Win32, DOS (в защищённом режиме) и Linux x86 модули.
Ассемблирование и компоновка производятся с помощью GNU Binary Utilities.
Компилятор распространяется на условиях GNU GPL, стандартная библиотека — на GNU LGPL.
Имеется несколько сред разработки для данного компилятора. В качестве отладчика может использоваться GNU Debugger (также поддерживается gprof).
Несмотря на то, что компилятор имеет совместимость с QuickBASIC, в язык FreeBASIC было добавлено множество расширений и возможностей для соответствия современным требованиям и стандартам и совместимости с библиотеками и API, написанными на C/C++. Начиная с версии 0.17 пользователь может выбрать три режима компиляции (опция -lang): режим совместимости с QuickBASIC (qb), старыми версиями FreeBASIC (deprecated), и стандартный режим, включающий в себя все последние изменения и возможности языка.
Новые возможности и расширения:
поддержка Unicode;
множество встроенных типов переменных (Byte, UByte, Short, UShort, Integer, UInteger, LongInt, ULongInt, Single, Double, String, ZString, WString);
типы данных определяемые пользователем (бесконечная вложенность, Union, тип поля (array, function, bit fields));
пространства имён;
перечислимый тип (Enum);
новые возможности при работе с массивами (до 2 ГБ, Redim Preserve);
указатели (указатели на любые типы данных, неограниченная косвенная адресация);
перегрузка функций и операторов;
необязательные аргументы функций;
встроенный ассемблер (ассемблерные инструкции в исходном коде программы);
препроцессоры;
Typedefs;
конструкторы и деструкторы классов;
улучшенная графическая библиотека.
Проект FreeBASIC является кроссплатформенным пакетом для интегрированных сред разработки, первоначально созданный Андре Виктором, состоящий из компилятора, ассемблера на базе ГНУ, компоновщика и архиватора, поддерживающим исполняемые библиотеки, включая программную графическую библиотеку. Компилятор f
bc к настоящему времени поддерживает процессоры на базе i386-архитектуры для ОС DOS, Linux, Windows и платформе Xbox. Проект также содержит тонкие связи (файлы заголовков) для некоторых популярных библиотек сторонних разработчиков, таких как, например, исполняемых библиотек C, Allegro, SDL, OpenGL, GTK+, Windows API и многих других, а также модулей, созданных для многих из этих библиотек.
FreeBASIC - высокоуровневый язык программирования, поддерживающий процедурное программирование, объектно-ориентированную парадигму и мета-программирование, с синтаксическим совместимым с майкрософтовским QuickBASIC. Фактически, проект FreeBASIC первоначально начинался, как попытка создания кодово-совместимой альтернативы для QuickBASIC, но он вырос в мощное средство разработки. Сегодня возможности FreeBASIC стали куда шире возможностей майкрософтовского QuickBASIC в множестве областей, поддержка большого количества данных в языке позволяет создавать программные стили, современные платформы и интерфейсы.
FbEdit - интегрированная среда разработки для FreeBASIC
Как и каждый программный продукт RAD, FbEdit делает прикладную разработку легкой и быстрой, обеспечивая умные функции и встроенные умные инструментальные средства:
синтаксическая подсветка характеристик;
более удобочитаемый код и лучший обзор;
темы;
легкая приспособляемость к вашим персональным настройкам;
визуальный диалоговый редактор;
быстрое wysiwyg создание диалоговых окон Microsoft Windows с помощью мыши;
заказная поддержка элементов управления;
многократно используемые, настраиваемые элементы управления подобно видеоиграм, окну просмотра internet или электронных таблиц;
автозавершение кода;
более быстрое занесение данных для более быстрой разработки;
подсказки “tooltips” по программированию, что минимизирует необходимость для просмотра руководства по языку;
умный отступ и автоматическое формирование блоков при редактировании создает хорошо организованный код и меньшее количество ошибок;
Знаете ли Вы, что такое "усталость света"? Усталость света, анг. tired light - это явление потери энергии квантом электромагнитного излучения при прохождении космических расстояний, то же самое, что эффект красного смещения спектра далеких галактик, обнаруженный Эдвином Хабблом в 1926 г. На самом деле кванты света, проходя миллиарды световых лет, отдают свою энергию эфиру, "пустому пространству", так как он является реальной физической средой - носителем электромагнитных колебаний с ненулевой вязкостью или трением, и, следовательно, колебания в этой среде должны затухать с расходом энергии на трение. Трение это чрезвычайно мало, а потому эффект "старения света" или "красное смещение Хаббла" обнаруживается лишь на межгалактических расстояниях. Таким образом, свет далеких звезд не суммируется со светом ближних. Далекие звезды становятся красными, а совсем далекие уходят в радиодиапазон и перестают быть видимыми вообще. Это реально наблюдаемое явление астрономии глубокого космоса. Подробнее читайте в FAQ по эфирной физике.