REBOL/SDK - Introduction
Purpose of the SDK
The REBOL SDK is designed for programmers, software engineers, IT staffs, and software development companies that want more control over the operation and configuration of their REBOL programs.
The SDK provides several new dimensions of REBOL capability:
- Professional REBOL Kernels
/Base, /Pro, and /Face that are optimized for both startup speed and size. Use them to test your programs prior to encapsulation or to replace REBOL/Core and REBOL/View for script execution.
- REBOL encapsulators
that allow you to create a single executable binary that contains your program (compressed and encrypted within).
- The REBOL Preprocessor 2.0
provides a better way to organize and build your REBOL programs. It's also now built into the encapsulators.
- Source Code Modules
for REBOL's mezzanine functions, internet protocols, view functions, visual interface dialect (VID), and more.
- Installer and Uninstaller
source modules to create self-installing programs in a small fraction of the size of other installers.
Licensed Software. This Software is licensed not sold. You may use this Software only as described in this license. If you do not agree to the terms of this license, do not install or use the Software.
Source Module Ownership. All source code modules are owned by REBOL Technologies. Source code modules are confidential and shall not be copied, distributed, or published. All changes, modifications, fixes, improvements, or derivations, must be submitted back to REBOL Technologies for possible inclusion in future releases. All such submissions are owned and copyrighted exclusively by REBOL Technologies.
REBOL API Restriction. If you choose to export the REBOL API (function and objects of REBOL) for users of programs created by REBOL/SDK (in other words, you allow users of your programs to write and execute REBOL scripts within your program), you must obtain a separate commercial distribution license from REBOL Technologies. If your program does not allow users to access the REBOL API, then no additional license is required.
Encapsulated Source Code. Programs encapsulated by this product can only be protected to the extent allowed by encryption technology. Because the program itself requires decryption prior to execution, it is not possible to fully protect the contents of the User's program. The User understands and accepts the possiblity that the encapsualted program source could be exposed to third parties and holds REBOL Technologies harmless and free from any claims or liability. If the User must fully protect important patents or trade secret software methods, the User should not use this Software.
Program Identification. The User may change the program icons or window title for programs that are created by this Software. However, the User must not make any other changes to the operation or identity of the REBOL Software.
Export Restrictions. This Software contains powerful encryption technology. You may not export or re-export the Software in violation of the export laws of the United States, or the applicable laws of any other jurisdiction. The Software may not be exported or re-exported to certain countries which are embargoed or restricted. Restricted countries currently include Afghanistan, Cuba, Iran, Iraq, Libya, Sudan, Syria, and North Korea.
Illegal Use. The User may not use the Software to perform any unauthorized transfer of information, such as copying or transferring a file in violation of a copyright, or for any illegal purpose.
Other Restrictions. You may not reduce the Software to human readable form, reverse engineer, de-compile, disassemble or modify the Software. You may not rent, lease, or lend the Software.
No Warranties. To the extent permitted by applicable law, the Software is provided "as is" without warranty of any kind, either express or implied, including, without limitation, the implied warranties of merchantability, fitness for a particular purpose, or noninfringement. The Software is provided with all faults and the entire risk as to satisfactory quality, performance, accuracy and effort is with you.
Limited Liability. REBOL Technologies is not liable to you for any consequential, special, incidental, or indirect damages of any kind arising out of the delivery, performance, or use of the Software, even if REBOL has been advised of the possibility of such damages. REBOL'ÃÂÃÂs liability, for any claim related to your purchase or use of the Software, whether in contract, tort, or any other theory of liability will not exceed the greater of U.S. $1.00 or the license fee paid by you.
Unenforceable Provisions. If any provision of this license is held to be unenforceable, the remainder of the license shall not be affected, and the unenforceable provision shall be reformed to the extent necessary to make the provision enforceable.
Governing Laws. Except to the extent local law provides otherwise, this license is governed by the laws of the State of California, U.S.A. This license is not governed by the United Nations Convention of Contracts for the International Sale of Goods.
Modification. This license may only be modified by a written document signed by both parties.
Termination. This license terminates if you fail to comply with its terms and conditions. If your license terminates, you must destroy all copies of the Software and all copies of software created by this Software. The termination of this license does not limit REBOL Technologies' other rights it may have by law.
Questions, suggestions, change submissions, and other comments regarding the REBOL/SDK and any of its programs or modules can be sent to us at:
You must provide an email address if you want a response.
SDK, Command, and IOS users will receive highest preference in our feedback responses (so please be sure to click on SDK in the feedback form).
Additional online information regarding this SDK, including bug lists, source code improvements, and updates may be published in a private area on our web site in the future. We will announce this service when it becomes available.
Help promote REBOL! We've included REBOL logos for display on your web-site or products.
See REBOL Logos.
To link these logos to our web site, HTML code such a this can be used:
<a href="http://www.rebol.com"><img src="pwr-sdk.png" border="0"></a>
Or, within your REBOL code you can link to our site with a VID layout line such as:
image %pwr-sdk.png [browse http://www.rebol.com]
You can resize these logos to better fit your web page or product, and you can also save them in some other image format, but please don't modify them in any other way. If you need to do that, contact us at feedback, and we will consider your suggestion.
Note that REBOL is a registered trademark of REBOL Technologies and this trademark can only be used for REBOL products and services.
SDK File Summary
The standard REBOL SDK includes these files. These files can only be used according to the terms and conditions of the REBOL/SDK license agreement.
sdk.html - SDK Documentation Table of Contents license.txt - License as text file bin/ enbase (.exe) - REBOL/Base encapsulator enface (.exe) - REBOL/Face encapsulator enpro (.exe) - REBOL/Pro encapsulator license.key - required to use pro, face, encap prerebol (.exe) - REBOL/Preprocessor rebbase (.exe) - REBOL/Base (interpreter core) rebface (.exe) - REBOL/Face (graphics core) rebpro (.exe) - REBOL/Pro (extended features) docs/ graphics/ - Graphical images and logos custom.html encap.html index.html intro.html kernels.html prebol.html registry.html source.html source/ - Source code modules gfx-colors.r gfx-funcs.r gfx-object.r mezz.r mezz-boot.r mezz-config.r mezz-control.r mezz-cvs.r mezz-file.r mezz-help.r mezz-input.r mezz-netset.r mezz-series.r mezz-web.r mezz-xml.r prebol.r prerebol.r prot.r prot-daytime.r prot-email.r prot-finger.r prot-ftp.r prot-header.r prot-http.r prot-imap.r prot-nntp.r prot-pop.r prot-root.r prot-send.r prot-setnet.r prot-smtp.r prot-utils.r view.r view-edit.r view-feel.r view-funcs.r view-images.r view-natives.r view-object.r view-request.r view-styles.r view-vid.r
Installing the SDK
The SDK does not require any type of special installation. All executable files operate in a stand-alone fashion. They only require the license.key file and no other hidden files or magic registry settings are used.
To install the SDK, unzip (untar) the distribution package into the desired directory.
To use the encapsulation (encap) programs that are part of the SDK, you must have your license.key in the same directory as the encap program. If you do not, you will receive this message:
*** License key is missing. Please copy "license.key" to the *** installation directory. Press return to quit.
To fix the problem, move the license.key to the same file as the encap program.
To test the encap program on Windows, use your mouse to drag the test.r script over the enface icon. The encap program will create an executable file called test.exe as a result. Click on test.exe to verify that it runs.
To test the encap program on Linux or other Unix-type systems you can type the line:
The encap program will create an executable file called test.exe as a result. Run the test file to verify that it works (you need X windows to be running).
See the Encap chapter for more details and examples.
Uninstalling the SDK
Because the SDK does not require installation, no uninstallation is needed. Simply delete the SDK files when you no longer need them or if you move the SDK to another system.