Euphoria

About Euphoria

Euphoria started its life in 1993 as a commercial language developed by Robert Craig of Rapid Deployment Software. With the 3.0.0 release in October of 2006, Euphoria started its second life as open source software and is now maintained by a group of developers with the help and input of its users (see EuphoriaContributors).

Latest Major Release

Euphoria 4.0.0 final has been released after a long and hard development cycle. 4.0.0 is the largest ever update to Euphoria. New language constructs, scope visibility modifiers, conditional compilation, performance enhancements, multi-line comments and strings, enumerated values and types, variable assignment on declaration, switch statement, various loop modifiers, user defined pre-processor, unit testing, source code documentation system, coverage analysis, disassembler, direct C compilation via euc, new online and PDF manual and of course a new logo are in addition to the over 800 public members in the new standard library.

The standard library has over 800 public members ranging from simple helpers such as iif() to more complex methods such as full sockets interface, http access, regular expressions, dictionary map structures and much more. To help you navigate this new territory we now have full text searchable documentation, offline downloadable HTML documentation and finally a nicely formatted PDF document for easy reading and printing.

Please enjoy this new monumental release of Euphoria and Download Euphoria today.

Euphoria is a cross platform general purpose procedural programming language that includes one of the fastest interpreters and compilation to native binaries via the included euc tool (Euphoria to C).

Getting Started

Whether you're a beginner or experienced programmer, the GettingStarted page has helpful links to documentation, code samples, and tutorials to make your first steps with Euphoria easy. If you have questions that don't seem to have answers in the documentation, feel free to ask in the forum.

Features

  • a remarkably simple, flexible, powerful language definition that is easy to learn and use.
  • a high-performance, state-of-the-art interpreter that's many times faster than conventional interpreters such as Perl and Python.
  • dynamic storage allocation. Variables grow or shrink without the programmer having to worry about allocating and freeing chunks of memory. Objects of any size can be assigned to an element of a Euphoria sequence (array).
  • an optimizing Euphoria To C Translator, that can boost your speed even further, often by a factor of 2x to 5x versus the already-fast interpreter.
  • extensive run-time checking for: out-of-bounds subscripts, uninitialized variables, bad parameter values for library routines, illegal value assigned to a variable and many more. There are no mysterious machine exceptions
  • features of the underlying hardware are completely hidden. Programs are not aware of word-lengths, underlying bit-level representation of values, byte-order etc.
  • a full-screen source debugger and an execution profiler are included, along with a full-screen, multi-file editor.
  • Euphoria programs run under Linux, FreeBSD, OS X, and 32-bit Windows.
  • You can make a single, stand-alone .exe file from your program.
  • Euphoria is completely free and open source.

Platforms

Open Euphoria interpreters are available for the following platforms:

Rapid Deployment Software also offer a DOS edition which runs on MS-DOS and compatibles (PC-DOS, DR-DOS, FreeDOS)

Who Uses Euphoria

Euphoria is used in a variety of commercial programs. The Windows version has been used to create numerous GUI, utility and Internet-related programs. The DOS version has been used to create many high-speed action games, complete with Sound Blaster sound effects. The Linux and FreeBSD versions have been used to write GUI programs, Web-based (CGI, FastCGI and SCGI) programs, and lots of useful tools and utilities.

Euphoria vs. Other Languages

Version History

  • Euphoria 1.0 for DOS was released in July 1993 by RDS.
  • MS-Windows support was added in version 2.0.
  • By version 2.2, Linux support was added and a Euphoria-to-C Interpreter was created.
  • Cooperative multitasking was added in version 2.5.
  • Version 3.0 was released as open source
  • Version 4.0 was released December 22, 2010. Read the announcement. A very active development team delivered a completely new Standard Library, several new keywords and block statements, performance enhancements, and other useful features. The Open Euphoria Community Website, http://openeuphoria.org/ is powered by version 4.0.

This is a rough draft of the Euphoria description. Please help us improve this description.

Search



Quick Links

User menu

Not signed in.

Misc Menu