Official Euphoria Website
Official EuOS Site
My EuOS Site
Euphoria is a powerful 32-bit language for DOS and Windows (32-bit). It lets you create types that don't just specify the structure of the type (like in Basic), but also the constraints. You can also create dynamic arrays (or sequences in Euphoria). Each element can also be a sequence, or a number. It is very easy to learn and use, and it is much faster than Basic, and other languages. Also, you can get a limited version for free (it does everything that the full version does, except it can't debug over 300 lines of code).
Access ZIP files in your Euphoria program. Now uses standard, cross-platform file routines.
A project to help fix Euphoria namespace problems by encouraging code reuse with a standard library of useful routines.
I've decided to try writing an Euphoria to C/Java translator, and to support this effort, I'm continuing some work from EPP. I think I'll also make EPP more functional as a pre-processor. I just added a parser for the tokens which converts the tokens into a tree.
With this, you can use those neat little browse for folder dialogs in your Win32 Euphoria programs.
Includes routines for accessing files through standard C FILE * pointers, and reading the standard output or writing to the standard input of a process.
A multithreading library for Linux. Requires the pthread library. Euphoria is not designed to handle reentrancy. Use at your own risk! In fact, I do not suggest that you use this version of the library. You might find the source code interesting, however. It demonstrates the pthread library and has some C code to allow Euphoria to pass structures to a C routine.
My project to speed up Euphora programs and decrease program size.
Assembly Interpreter version .55
Not very pretty, but useful.
Gamelib - updated June 26, 1999
A game library for Euphoria based on ESE. Right now, it includes keyboard routines based on keyread.e, PC speaker tools (pcspeak.e) converted to use ESE, sound effect routines to use sfx2.e with ESE, and timer routines. New: Includes mode 19 graphics and an early version of a sprite library.
By writing a program based on events, I believe some very complex programs such as games can be greatly simplified. This also allows several things to happen in parallel. For example, I was able to convert J. Craig Gilbert's pc speaker tools to use ESE allowing my programs to do processing between the changes in frequency. Example: program->play sound->sound->wait->sound->wait->program is now program->play sound->sound->program->sound->program. It's not exactly the same as multitasking, but it is very useful.
My First Sort-of good game in Euphoria (Now fixed)
I just re-uploaded this program after realizing the last version crashed for some reason. I wrote this game called BATTLE!. This is only version 1.0, so it's not very good, but I hope to improve on it in BATTLE! 2.0. I've included all the source code. Basically, it's a two player game where you fight your opponent with swords, spears, bows, and shields.
These are very simple artificial intelligence things that can actually do quite well for some jobs. Just give them some training data and some inputs, and it will output the closest matches. I've even written a very simple OCR (optical character recognition) program that can fairly accurately figure out the letters A-D. I would guess that a more advanced program could do better and with the whole alphabet with this type of AI.
Now your programs can learn using these neural network routines in Euphoria.
This allows your program to adapt and to some extent "learn". I've included a tic-tac-toe program and a simple test program to demonstrate the power of natural selection when applied in computer science.
Evaluates Euphoria expressions, calling routines and accessing variables as necessary using customizable routines. Now supports all Euphoria expression syntax, and allows sequences and function return values to be subscripted directly.
My interpreter (in C++) for Euphoria (currently implemented: sequences, atoms, and integers).
Like W3C, but for Euphoria.
I've finally worked out the bugs that were slowing me down, and it now works. Yes! I am working on a pre-processor for Euphoria. It will add object-oriented programming to Euphoria, as well as some other useful things.
EuOS is an operating system being developed by a team of Euphoria programmers. We could use more people to work on it. You can read all about it at http://euos.hypermart.net/.
Pointer.e contains routines for using pointers in Euphoria. Read the comments in pointer.e, and take a look at example.ex to see how to use them.