Rapid-Q Documentation by William Yu (c)1999-2000 Глава 1


1. Введение  (Rapid-Q Overview )

Rapid-Q  является BASIC языком программирования. Основные конструкции языка поддерживаются  многими платформами, (за исключением графического интерфейса) - Windows, Linux, Unix (Solaris и  HP-UX поддерживаются). Windows XP также поддерживается, за исключением команды Sound. Rapid-Q может использоваться для создания  GUI и консольных приложений, включая CGI приложения. Rapid-Q генерирует  байт код, а не машинный код. Это требует интерпретатора для чтения и выполнения байт-кода, однако этот интерпретатор встраивается в приложения, так что никаких дополнительных файлов для распространения ваших приложений не требуется. Размер исполняемого файла при этом составляет ~ 200-400 кб. Исполняемый файл упакован UPX. Размер неупакованного файла ~ 1 Mb. Возможно создать приложение в виде dll-ки  интерпретатора и исполняемого файла. Размер exe-файла  при этом составляет ~15 kb.
Основной проблемой при использовании интерпретатора может быть скорость выполнения, но для большинства  случаях она вполне приемлема.
Rapid-Q был первоначально создан, чтобы обеспечить свободную реализацию языка программирования БЕЙСИКА для Windows. 

1.1  Все-таки насколько медленен  Rapid-Q ? ( How slow is Rapid-Q anyway?)
 

Хотя  Rapid-Q  компилирует исходник в байт-код,  исполнение программ не является таким медленным, как некоторые считают.
Скорость выполнения будет невысока, если требуется выполнять сложные вычисления или низкоуровневые операции с данными . Например побайтовое чтение из 1Мб файла будет выполняться дольше, чем в других языках, но не намного.
То же при выполнении цикла I = I + 1  несколько тысяч раз. Однако отрисовка графики, контролов и форм по скорости будет происходить так же, как в других языках. Если же требуются быстрые вычисления, то можно написать отдельную DLL , например на С, и вызвать ее из Rapid-Q.

1.4  Сколько памяти требуется  программе написанной на  Rapid-Q?  (How much memory does Rapid-Q suck out of my programs? )
 
Требуется меньше 200 кб, т.к все переменные и объекты создаются динамически.
После завершения программы память   освобождается.
 
1.5 Легко ли будет взломать мою программу?  (How easy is it to hack into my programs? )
 
Rapid-Q производит нестандартный  байт-код , и если не знать подробно, как этод код интерпретируется, то взломать программу очень и очень сложно. Rapid-Q не присоединяет символьной таблицы и дополнительной отладочной информации к  exe- файлу.
 
1.6  Нужна ли лицензия для распространения  моих программ, написанных на Rapid-Q? ( Do I need a license to distribute my programs? )

Нет. Вам не нужна лицензия для использования Rapid-Q, и не нужна лицензия для распространения или продажи ваших программ.
Rapid-Q может свободно использовать для любых целей, в том числе связанных с получением коммерческой выгоды. Вы не должны платить мне и уведомлять, что ваша программа создана с помощью Rapid-Q.
Вы однако не можете распространять
Rapid-Q за плату.

The only agreement you have to worry about is that if you choose to use Rapid-Q, you assume any and all consequences, direct or indirectly from the use of Rapid-Q. Rapid-Q can be used for any task, whether it's profit-seeking or otherwise. You don't pay me a cent, and you don't even have to acknowledge that your program was created with Rapid-Q (although this would be a nice gesture). You CANNOT, however, distribute Rapid-Q (the program itself) and charge for it. You're allowed to bundle Rapid-Q along with your program(s), so long as the user is well informed that it's not buying into Rapid-Q, but rather, buying into your program. How is that done? By not even advertising that your distribution includes a copy of Rapid-Q. Call it the hidden feature.

Preface Содержание Up   Next Глава