Skip Links

Network World

  • Social Web 
  • Email 
  • Close

(Comma separation for multiple addresses)
Your Message:

Euphoric about Euphoria

By Mark Gibbs , Network World , 10/20/2003
Gibbs
  • Share/Email
  • Tweet This
  • Comment
  • Print

"It's the year 2399. The galaxy is dominated by the evil forces of the C empire. Programmers' minds are being enslaved to the C language. Your objective as commander of the Euphoria is to rid the galaxy of the 50 C ships and spread euphoria throughout the galaxy. Forty of these evil ships are regular C ships, 9 are the more powerful ANSI C ships, and a single ship, lurking somewhere in the galaxy, is the extremely powerful and terrifying C++."

- Introduction to the game "Language War" written in the language Euphoria showing the adherents' fervor.

As you might have noticed, here in Gearhead we have a slight obsession with computer languages because your language choices for IT projects will have a huge effect on systems architecture, functionality, maintainability and your sanity. Moreover, one language won't fit all your needs. Sometimes you need a language for big systems stuff, other times you'll need one for ad hoc systems admin stuff, and they likely will be quite different beasts.

Over the past few years we've covered many large-scale and well-known languages, including PerlPython and PHP. We've delved into exotica such as Rebol and Jython. This week, we look at yet another exotic programming tongue that, while it is not well known, actually is supported by an active and vociferous community. The language in question is Euphoria.

Euphoria, the creation of Robert Craig of Rapid Deployment Software in 1993, can be found at www.rapideuphoria.com. Why is it called Euphoria? Because the name is an anagram for End User Programming with Hierarchical Objects for Robust Interpreted Applications. A somewhat labored joke to be sure, but now you know.

Euphoria is, however, profound and very interesting. Supported on Windows, DOS, Linux and FreeBSD, it is an interpreted language with some impressive features. For a start, Euphoria is amazingly fast considering that it is interpreted. The Euphoria Web site says that it is 30 times faster than Perl or Python. And there's also a Euphoria-to-C translator that can boost execution speed even further.

Under the hood, Euphoria is a block-structured language with a line-based syntax and a simple data model that makes it suitable for general application development. In Euphoria, all data elements are either atoms or sequences, which makes it pretty similar to, say, C or C++. Atoms are numeric and include characters, integers or floating point values. Sequences can contain atoms and other sequences and can be any length.

  • Share/Email
  • Tweet This
  • Comment
  • Print
Comment
Login
Forgot your account info?
Add comment
Anonymous comments subject to approval. Register here for member benefits.
Have a NetworkWorld account? Log in here. Register now for a free account.

Videos

rssRss Feed