---> is this the latest version of Euphoria? See: http://members.aol.com/FilesEu/ ---> To install Euphoria see INSTALL.DOC --------------------------- Euphoria version 1.5a June 12, 1997 --------------------------- Welcome to Euphoria! ... End User Programming with Hierarchical Objects for Robust Interpreted Applications Euphoria is a very-high-level programming language with the following features: * The language is flexible, powerful, and easier to learn than BASIC. * There is no waiting for compiles and links - just edit and run. However, if desired, you can create and distribute a royalty-free, stand-alone .exe file. * Dynamic storage allocation is fundamental to Euphoria. Variables grow or shrink in size without the programmer having to worry about allocating and freeing chunks of memory. Elements of an array (Euphoria sequence) can be a dynamic mixture of different types and sizes of data. * Variable types can be as rigid or as flexible as you like. You can specify the precise set of legal values that may be assigned to any variable. You can easily write generic code that works on any type of data. * Euphoria is NOT an object-oriented language. It's much simpler, yet in many ways more powerful. Problems that require dozens of obscure statements in C++, can often be solved in Euphoria with just a few simple statements. * Euphoria provides extensive run-time error checking for: out-of-bounds subscripts, uninitialized variables, bad parameter values for library routines, illegal value assigned to a variable, and many more. If something goes wrong you will get a full error message, with a traceback and a dump of variable values - no mysterious machine "lockups" or crashes. * Program execution speed is 10 to 20 times faster than Microsoft QBasic, and 8 times faster than Sun Microsystems' Java interpreter. This is remarkable, given that Euphoria provides much greater flexibility, and run-time safety than either of those languages. * Euphoria programs are not constrained by any 640K or 64K memory restrictions for which MS-DOS is infamous. You can use all of the multiple megabytes of extended memory on your system seamlessly, and if that isn't enough, Euphoria will use a swap file on disk to page chunks of memory in and out based on a least-recently-used algorithm. * An integrated, easy-to-use, full-screen source-level debugger/tracer is included. * Both a statement-count profiler, and a time profiler are included. * A full-screen, multi-file editor with color syntax highlighting and auto-completion of Euphoria statements is provided, complete with Euphoria source code that you are free to modify. * A large collection of interesting demo programs written in Euphoria is provided. * There is a rapidly growing collection of 3rd party programs and libraries. See WEB.DOC * The implementation of Euphoria on MS-DOS is full and complete. If necessary, you can access DOS software interrupts. You can call machine-code routines. You can even set up your own hardware interrupt handlers. Several high-speed action games, complete with Sound Blaster sound effects have been developed 100% in Euphoria, without the need for any C/C++ or machine code. Some of these games are now in commercial distribution. Who would benefit from using Euphoria? * novices / students - Euphoria is one of the simplest and easiest of all languages to learn. - Euphoria shields you from machine-level issues such as memory addresses, number of bits in a byte etc. - Euphoria does more error checking than any other popular language. - Euphoria never leaves you with a crashed machine - you'll always get a clear explanation of what went wrong * hobbyists - take a look at some of the interesting games and high-speed graphics demos we've written, then visit the Web and download some even better games and demos written by Euphoria users. - do you really want to invest the time and money needed to learn C++? - do you really enjoy spending your weekends tracking down subtle pointer corruption bugs? * professionals/businesses - You can develop a reliable, maintainable, fully-debugged program in *much* less time in Euphoria than in C/C++. - take a look at INCLUDE\SORT.E. Can you write a generic routine this easily in C++? - See DEMO\MYDATA.EX. Can you set up a simple database this easily in any other language? - Euphoria can be used as a sophisticated batch file language. - Euphoria is great for quick, easy development of file filters and other utilities. - You can distribute your program royalty-free as a .exe file. Euphoria comes in two different editions: a Public Domain Edition and a Complete Edition. Both editions will run any Euphoria program of any size at full speed, and will report all "compile-time" errors such as syntax errors, undeclared variables etc. The only restriction in the Public Domain Edition is that full diagnostic information for run-time errors is not provided for large programs. For programs up to 300 statements in size you will enjoy the full support of Euphoria's excellent debugging facilities. Blank-lines and comments are not counted, and the standard include files are free (if not bound or "shrouded"). You can put many statements on one line, or you can split a statement across many lines -- it won't affect your statement count. For larger programs, a run-time error will cause your program to halt with just a brief message. The usual fully-detailed diagnostics with a dump of variable values and other debugging information will not be provided. However, the source debugger and profiler will remain fully operational, and you can insert debug print statements the way you would in C/C++ or other languages. In C/C++ very few run-time errors are even detected (until your machine locks up, crashes, or you get a "GPF"). Your productivity will remain much higher in Euphoria, given the run-time safety, flexibility and expressive power of the language, plus the fact that you won't waste time compiling and linking. We want you to enjoy writing some great programs in Euphoria. When you decide that you like the language, and want to save time developing large programs, we hope you will decide to purchase the latest Complete Edition, and the desktop-published printed manual. See DOC\REGISTER.DOC for details, or run DOC\HOW2REG.EX. An ASCII text version of the complete Euphoria Reference Manual is in DOC\REFMAN.DOC and DOC\LIBRARY.DOC. To save time, just type: guru to search for subjects that you are interested in. The Public Domain Edition of Euphoria, in its entirety, is being placed in the Public Domain. This includes the Public Domain version of the compiler/interpreter "ex.exe" and all of the demo programs, including the editor. There's 15,000 lines of free Euphoria source code in this package. We encourage you to use it, copy it, modify it, distribute it, upload it etc. You are free to distribute the Public Domain Edition, without royalty, so anyone can run a Euphoria program that you have developed. You can even bind your Euphoria program with a copy of ex.exe to make a single, stand-alone .exe file. You may *not* distribute the version of the file "ex.exe" that comes with the Complete Edition. To run Euphoria you must have MS-DOS (or PC-DOS etc.) on any 386 or higher processor. Euphoria will use extended memory if it is available, but can run in 640K of conventional memory if that is all you have. It has been well tested under MS-DOS 4, 5, 6, 6.2 and 7.0, Windows 3.1, Windows 3.11, Windows NT, Windows 95 and OS/2. If the Public Domain Edition runs on your machine, the Complete Edition will also run. Euphoria exploits the full 32-bit power of your PC. A Euphoria program will run under DOS, or as a DOS application under Windows or OS/2 - just double-click on the file name, or open a DOS prompt window. A Windows WIN32 API version of Euphoria is under development, and a Linux version is planned. What's in this Public Domain release: subdirectory (after installing) BIN - Euphoria (ex.exe), search, guru, bind, and more INCLUDE - standard .e include files DEMO - games, benchmarks and other Euphoria programs that you can run to check out Euphoria \LANGWAR - real-time action space wars game \BENCH - benchmark programs and results DOC - documentation files, including the complete Reference Manual REGISTER - information on ordering the Complete Edition, and a program (HOW2REG) to help you register You can run some of the programs without installing Euphoria, but you really should run INSTALL.BAT to organize the files into subdirectories and set yourself up properly. Some programs will not run until you have installed. *** See INSTALL.DOC for easy instructions on installing Euphoria *** ---------------------------------------------------------------------------- Notice to Shareware Vendors: We encourage you to distribute this Public Domain Edition of Euphoria. You can charge whatever you like for it. It is not shareware in the usual sense. People can use Euphoria for as long as they like without obligation. We make money from those who start to seriously develop large applications, and want to get the latest release, with printed manual, and enhanced debug support for large programs. ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- DISCLAIMER: The Public Domain and Complete Editions of Euphoria are provided "as is" without warranty of any kind. In no event shall Rapid Deployment Software be held liable for any damages arising from the use of or inability to use this product. ----------------------------------------------------------------------------