Easy GUI Development with wxEuphoria

2011.09.02 I think GUI development is easier using drag-and-drop than typing. Way easier. That's why, when I'm developing Microsoft Windows apps, I would use the Win32Lib-IDE for Win32Lib, even though my preferred GUI library, wxEuphoria, is far more robust and functional. That's because I didn't have access to a GUI builder for wxEuphoria. Now that's all changed.

Since Matt Lewis opened up the XRC functionality available in wxWidgets, now I can use wxFormBuilder to build my GUI, then create my program. It's extremely simple and fast to develop wxEuphoria GUI programs. Anyway, I'm very excited about this workflow and will probably adopt wxEuphoria for all my GUI programs. I suggest that if you're creating GUI programs, this new workflow will have you far more productive in a shorter amount of time than any other Euphoria GUI program work process. Check out this screenshot from a current project I'm developing:

Sweet!

IDE Fixes for Euphoria 4.0 Compatibility

2011.01.10 I have created an archive of Win32Lib files that you need to use the IDE with Euphoria 4.0, and a archive of IDE files needed for use with Euphoria 4.0. I plan to host an IDE executable as soon as development stablizes.

Euphoria Mascot and Logo

2011.01.01 Euphoria's developers decided to create a nice logotype and mascot for the release of Euphoria version 4.0.0. There were many design proposals considered, going back as far as a year or so ago. But right before the release of version 4, "Smudger" (Dave Smith) came forward with some simple but brilliant designs for a logotype. I especially like the bracketed "o" in Euphoria. You can see the new logotype and "sequence claws" icon in the upper-right corner of this web page. The claw bracket represents the Euphoria "sequence" datatype, which is, of course, one of the unique identifiers of the language and representative of its power.

The new mascot is a mongoose, the kind that eats snakes. You can see him in the image below.



You can grab some artwork for your desktop or other purposes at the Euphoria ArtWork page.

Euphoria 4.0.0 Released

2010.12.22 Euphoria 4.0.0 was released today. Download it.

RC2 Available Today!

2010.12.08 Euphoria 4.0.0.RC2 is expected to be released today. Please download, install, and test.

You can support the development of Euphoria by donating with the following link. Thank you!

Donate to Euphoria

2010.11.08 Euphoria 4.0.0.RC1 is expected to be released today. You can support its development by donating with the following link. Thank you!

Euphoria 4.0.0-RC1

2010.11.07 Euphoria version 4.0, Release Candidate 1 will be available tomorrow. Download it today.

Win32Lib Fixes for Euphoria 4.0 Compatibility

2010.08.25 This ZIP file contains the changed files needed for Win32Lib to work with Euphoria 4.0. These files need to be copied to and replace the files in your Win32Lib/include directory.

UPDATE: The files in this ZIP archive are intended to modify the version of Win32Lib available via SVN from the SourceForge Win32LibEx Project Page.

SVN Repo here: https://win32libex.svn.sourceforge.net/svnroot/win32libex/trunk/

SourceForge Project Page: http://sourceforge.net/projects/win32libex/develop

Win32Lib IDE Differences Between Windows 7 and Windows XP

2010.06.18 These two screenshots are of the exact same executable file. The program was built using the Win32Lib IDE, but I don't think that matters. It could have been hand-coded and still be displaying the differences noted below.

The one on the left is running in Windows XP. The one on the right is running in Windows 7. Notice the significant difference in font sizes and the size/placement of the buttons.

Using Regular Expressions

2009.10.14 Regular expressions (also known as ‘regex’ or ‘regexp’) are short text strings for describing search patterns. Regex can be used to search for simple or extremely complex patterns through blocks of text, and Euphoria 4.0 can interpret and use them.

Geekology.co.za has posted an article about using regular expressions. Check it out if you are new to them. Euphoria's 4.0 uses PCRE.

Word Squares: The Programming Challenge Update

2009.08.23 I have uploaded a program that partially solves the Word Squares challenge I issued back on June 21, 2009. Click here to download the file set. It includes both the source and a compiled version. It should work with both Windows and non-Windows platforms. You will need to download the Euphoria words.edb database separately. The program only solves the simplest part of the challenge- dealing with a 2x2 grid of letters. (If you find a way to tweak it to make it faster, please let me know!) Here's the result:

The grid of four letters that creates the most 3- and 4-letter words is aert, which creates 14 words: rate, tare, tear, are, ear, era, rae, ate, eat, eta, tea, art, rat, tar.

Now, can you find the grid of 9 letters (3x3) which creates the most 3+ length words? Show me!

Euphoria 4.0 Beta 1 Released

2009.08.14 The first beta of Euphoria 4.0 has been made available for download. Download it, play with it, and report back any bugs or other issues you have.

Bill Aitken's Book Released and Free for Now

2009.08.01 Last month, Bill Aitken released his new book, Euphoric Mysteries, which you can download now for free! If you're new to programming or new to Euphoria, this book will be a great resource for your education. Check it out and let us know what you think.

Word Squares: The Programming Challenge

2009.06.21 So my last attempt at a contest was hijacked by Matt Lewis, who converted his hexes.exw wxEuphoria demo into a triangle grids demo. I suspect it will be easy enough to convert that to a generic library for use with any UI. So, thanks Matt. For ruining the contest. HAHAHA. Just kiddin'. I wanted the code for a game I've invented. Hopefully I find the time to implement it.

This next contest is just for fun: using a standard dictionary (words.txt (Google it), or a Euphoria database dictionary of words) and given a square grid with sides of length x (from 2 to X), with a letter in each grid square, determine all possible words in the grid using adjacent letters, each letter used only once, and with word length at least 3 characters.

Yes, this is a Boggle solver. But, there's a twist! For each grid size, determine what combination of letters will give the highest possible score.

For instance, for a grid of size 2, you would want to find the four letters that form the most four letter words, plus the most three letter words. Maybe there is a set of four letters that form more three letter words than two letter words. Regardless, the most possible 4-letter words formed with a grid of size 2 should be 24 if my math is correct (4x3x2x1). The most possible 3-letter words formed with a grid of size 2 should be the same. Does that mean there could be as high as 48 points? I don't know. Regardless, now do the same for a grid of size 3, size 4, and size 5.

Scoring: Each three- and four-letter word is one point. Each five letter word is two points. Each six letter word is three points. Each seven letter word is 5 points. Each 8+ word is 11 points.

   +-+-+
|O|P|
+-+-+
|S|T|
+-+-+

The grid above would score (at least), stop, opts, tops, spot, post, and pots, for at least 6 points.

We can handle this on EuForum.DO NOT POST CODE to EuForum (unless you want to contribute it to others). If you think you have a clever, winning algorithm, then keep it to yourself! All results will be published and all entries will be entered into the public domain after the contest is over. If you do NOT want the code released, just let me know.

Your program will need to read the test games from a file called test_games.txt. Download it to get the format. Each game grid will be separated by one blank line. As output, use the same format but puts the found words list in a comma-delimited format right below the grid. Then skip a line as normal. Each line that contains a comma will be considered as part of the list, just so we don't have problems with "line too long." Comments can be included by using a '#' character as the first character of the line. Comments will be ignored, so you can put them anywhere. Even in a grid.

For example, you could write out the above example as so:

OP
ST
stop,opts,tops
spot,post,pots

XE
TN
next,net,ten,...

The program that finds the most words in the least amount of time will be declared the winner.

For the grid creator part of the contest, write out a file in the same format. test_games.txt will grow as the contest goes on. I'm just providing a test file for now.

Feel free to brag about your results in the appropriate thread at EuForum. The contest judges will confirm all results.

Gotta Have It: Triangle Grid Library

2009.06.17 My time is limited, but there are some things I gotta have! At the moment, that includes a library that will let me plot triangles on a 2D triangular grid. I need to be able to hover over the grid with the mouse and identify triangles for selection. (So, given a point coordinate, tell me in what triangle it is.) The library should include a provision for plotting triangles (deriving coordinates of each point) and (possibly, but not necessarily) rotating the grid (it would be nice to have). The triangles library should be generic enough for use with any UI. Submissions should provide a demo that draws a triangle grid, then allows mouse selection of triangles in the grid. Your demo should be Windows compatible (DOS is okay), only because I only have a Windows PC to test on. Well, I guess I also have a FreeBSD PC. So if you absolutely refuse to touch Windows (Irv!), a Linux/FreeBSD program will be acceptable.

I've decided to hold a contest to get the best solution! All code submitted will be open source/public domain code for the benefit of the Euphoria community. The winner will receive fame and glory. And maybe some cash. We'll see.

If you need a start on triangle grids, see

Amit's Thoughts on Grids and More
Programming triangle grids
and Google it

I'll choose an end date based on how many programmers want to participate. Check back for updates in a day or two or three.

I would like to offer a cash prize for the top three entries. If you are willing to donate some dough to the cause, please contact me. Thank you!

Euphoria 4.x News

2009.06.15 Well, of course a lot has happened since I last posted. BBCMF is still being updated every once-in-a-while. The Download page has improved- a little more descriptive and helpful. Euphoria 4.x development is closing in on a beta version. We should see a beta release within a week or two. One of the nice changes is the build system. Now all it requires is

For Windows:
configure.bat --build build
wmake winall
For Linux:
configure --build build
make
How easy is that?! The Euphoria Development Team has done an incredible job in making Euphoria versatile while maintaining the speed and ease-of-use. It's a great language for beginners, and a great language for experts. Check it out if you haven't already. Update: Docs updated and OpenEuphoria Forum running on latest version of Euphoria 4.0!

Euphoria 4.0 Alpha

2008.11.27 Happy Thanksgiving to everybody. Now go download Euphoria 4.0 Alpha! This is a major update to Euphoria and makes programming that much easier and better. It's that same Euphoria with extra bonuses and features that will make your programming time more efficient and effective. I am using it right now for a few web sites, including my home page and the BBCMF home page. I've also been using it for all my desktop programs. There may be a few bugs remaining, so please download this Alpha version and put it through its paces using your own programs. Lots of thanks to all the developers!

Euphoria 4.0

2008.06.12 Euphoria version 4.0 is coming along great. It is the next incarnation of the language, and it's going to make program development even more rapid than before. There are some great enhancements coming. Right now it's in a pre-alpha stage. Check out the Euphoria 4.0 wiki (developed with EuWiki) for more information. See also the temporary documentation page.

Euphoria 4.0 (alpha) is currently running two sites: My Personal Site and the BBCMF Site.

Now a little reminder for myself: I have recently installed Euphoria source on my web host so I can do the following:

svn co http://rapideuphoria.svn.sourceforge.net/svnroot/rapideuphoria/trunk eu40
cd eu40/source
./configure
export EUDIR=/home/...
export EUINC=/home/...
make
cp exu ecu ecu.a eubackend ../bin

I need to follow the above steps when I want to update the version of Euphoria serving my web pages.

Site Upgrade

2008.05.15 BBCMF is stable right now (methinks), so I'm going to convert this site (UsingEuphoria.com) to using it. It shouldn't take too long... a few hours at the most. I've already done the conversion for my website, and it's running the BBCMF web site, so there's nothing to fear. If you'd like to play with BBCMF, go to the BBCMF Downloads page and have at it. Please let me know what I can do to make it better for you.

Update: Conversion is on hold until further notice. (I just ran out of time for now.)

New EuMakeDoc

2008.01.30 EuMakeDoc is a project that allows programmers to imbed documentation directly in the source code, and then extract them into a nice set of HTML files. Please download the new source and let me know if you experience any problems. If you need to know how to use it, please post to EuForum.

The Perfect Euphoria Setup

2007.10.11 First, a little announcement: EusLibs is available! The EusLibs (Euphoria Unofficial Standard Libraries) repository is now open at Sourceforge. The step-by-step instructions below will show you how to get it to your PC.

If you want the perfect setup to Euphoria, follow the steps below:

  • First, download and install Euphoria to its default location.

  • Next, create a folder in root called "eu_includes" (or similar). You will put all your non-standard include files somewhere in this folder's hierarchy and NOT in the c:\euphoria directory. Here's why: when Euphoria get updated, it usually replaces the euphoria directory. If your include files are in there, suddenly your system won't be able to find them anymore and your programs will fail. You will have to manually move them from the old folder to the new. That's a wasted step. :)
  • For Windows users, download and install TortoiseSVN. For Linux/FreeBSD users, go to the SVN home page.

  • Add Euphoria Libraries. You will do this for several libraries, but we'll use EusLibs for this example. The instructions below are for TortoiseSVN, but will be similar for other programs/platforms.
    • Create a folder for the library. We'll use the Euphoria Unofficial Standard Library Repository for this example, so call your new folder "EusLibs."
    • Right click on the folder and choose "SVN Checkout..."
    • Whenever you want to checkout source code from Sourceforge SVN, you'll need to have the path to the SVN library. It is usually in the format "https://THELIB.svn.sourceforge.net/svnroot/THELIB/trunk." The trunk directory is standard but optional, so verify the path at the library's SVN page.
    • For EusLibs, the URL to the SVN repository is: https://euslibs.svn.sourceforge.net/svnroot/euslibs/trunk. Copy and paste that into the textbox.
    • Click OK to get the library checked out to your PC.
    • Final step: modify your system EUINC variable to include the library you just checked out.
      • Right click on "My Computer" and choose properties
      • Click on the "Advanced" tab
      • Click the "Environment Variables" button
      • In the User Variables list, select the EUINC variable and click the "Edit" button. If you don't have a EUINC variable, create it.
      • Press the "End" key to position the cursor at the end of the "Variable Value" textbox. If there is no semi-colon there, type one. Now type the path to your EusLibs folder: "c:\eu_include\euslibs;" (or whatever path you chose). I don't know if the ending semi-colon is required, but I always include it just in case.
      • Click OK a few times to exit the dialog box.

Your system is set up to use the EusLibs library! In the future, when updates are made to EusLibs, you can simply right-click on the folder and click "SVN Update," and the updates will be applied. It's very easy and convenient to stay up-to-date. Read more about Subversion.

You'll want to follow the "Add Euphoria Libraries" steps above for the following libraries:

  • EusLibs - Done! All the base functionality you'll ever need. :)
  • wxEuphoria - awesome cross platform GUI
  • EuSQL - use SQL queries with the Euphoria Database System
  • matheval

You can also use SVN to keep your programs up-to-date, including wxEDB (a must-have EDS database manager that uses wxEuphoria and (optionally) EuSQL) and Euphoria MakeDoc, a documentation generator that extracts documentation from your source code. EuMakeDoc is used to make wxEDB and wxEuphoria documentation.

Building Blocks Content Management Framework

2007.06.19 Just announcing that BBCMF has its own page now. Check it out!

New Version of Euphoria

Euphoria Getting an Upgrade

2007.05.29 Euphoria is moving on up to version 3.0.3. It is available for beta testing, so download it now and give it a try. This latest version officially includes my relative include file path enhancement (see Relative Include Paths below for more info).

wxEuphoria Getting an Upgrade

2007.04.04 Euphoria's best GUI package, wxEuphoria from Matt Lewis, has been "reorganized and updated to take advantage of the latest wxWidget release (2.8.x)." It's looking better than ever! Unfortunately, all (most?) prior wxEuphoria code is incompatible (I think... I'll confirm with Matt). Alas, the price of progress. Right now it's in beta, so download the code and start testing.

Beginner's Guide to Euphoria Complete!

2007.04.04 Jules Davy has completed the conversion of David Gay's original interactive Beginner's Guide to Euphoria DOS program into a web site! If you're a nub, it's a comprehensive introduction to the basics of Euphoria. Check it out!

Unique Filename

2007.03.31 There have been a couple of unique filename generators on the list and submitted to the archive lately. I've written my own that I think will be much faster and more reliable, especially if dealing with large directories of files. For my content management system, I could be generating more than one file per second, so I need the ability to do that. Check out my Unique Filename Generator and let me know what you think.

UPDATE: Enhanced so that newFilename() creates the file with the filename it generates, then returns that filename. You can then use it to open the file. Before, it returned only a valid filename that, theoretically, could already be created and used by the time you try to use it. Thanks to Pete Lomax for the idea.

Relative Include Paths

2007.03.20 The desire to use relative include file paths in Euphoria has existed since time began. Well, at least since Euphoria began. Or shortly thereafter. Anyway, I had a real need for this recently and asked about it on EUforum. It hadn't been done, but nobody put up any stop signs, so I modified the interpreter and now include files can be relative to the file calling the include (see this thread). When you include a file, the Euphoria interpreter will now check the folder of the calling file first for the include file, then it will search the remaining options: program file folder, EUINC paths, EUDIR/include path. The interpreter was already keeping track of the calling file and its path, so it was very simple to make the enhancement. I want to thank Matt Lewis and Rob Craig for their help in getting this done. You can get the updated source from the Euphoria SourceForge project page.

Nexus Radio

2007.03.07 Christopher Bouzy and Egisca have released an upgraded version of their Nexus Radio program. You can download a demo, and it works with Windows Vista. It's a great application- looks and works great, from both a user and audiophile perspective, and it's made with Euphoria! It has a lot of features, including a TiVo-like recording option for your favorite radio stations. Read also my interview with Christopher Bouzy (from 2005 but still relevant). I'm listening to 80s music while I work on BBCMF.

Euphoria for CGI

2007.01.22 I don't know how Euphoria compares to PHP or Perl as far as speed (I'm willing to bet Euphoria is a lot faster), but I do know that it's fast enough and easy to develop with. I've used Euphoria to build a Content Management Framework called Building Blocks CMF. It's currently running my Personal Home Page as well as a time-management application on the web called StepByStepToDo.com. Interestingly, it's not running my Euphoria web site, yet. I just haven't had time to set it up. I'll get to that soon. Right now I'm developing the install procedure and the very basic package. It already has a blog module, comments module, and articles module. I'm going to start on a forum module soon, then I'll release it into the wild for testing. Should be fun! :)

Documenting Your Code

2007.01.12 I'm starting to develop a documenting-in-code habit (that I should have started long ago). That is, I put the documentation for my code inside the program itself, instead of maintaining separate files. If you look inside the wxEuphoria library, you'll see a bunch of comments like '--/topic Events' and '--/proc enable_events().' This is the embedded documentation for wxEuphoria. When you run that file through a program like makedoc, it extracts all that embedded documentation and outputs them to nicely formatted HTML files. makedoc was originally developed by Derek Parnell. I've added two enhancements to makedoc: 1) You can use /raw_start and /raw_end to include uncommented code in your documentation. 2) The output now goes to a sub-directory so it doesn't clutter up the base directory.

There are other documentation generators in the library, including Derek Newhall's EuDoc2. The cool thing about EuDoc2 is that it generates documentation that looks like Rapid Deployment Software's documentation.

Structured Sequences

2006.01.05 If you're keeping up with the discussion on EuForum, you'll note some recent activity regarding structured sequences. The idea can be compared to variable constants. With constants, we have a variable whose value is fixed; it will not be allowed to change. With a structured sequence (or structure), we have a variable whose structure (internal elements) is fixed; it will not be allowed to change. For example, if our_sequence is { atom, integer, sequence, integer }, then you can't assign the value 1 (an atom/integer) to our_sequence[3]. In Euphoria's current incarnation, you have to manually validate the data going into our_sequence[3]. With built-in structures, the interpreter would manage that and throw errors when an exception occurred.

Matt Lewis' OOEU allows not only simple structures, but also very advanced objects (that can have their own internal functions).

Mark Akita's Blog

2006.12.07 Mark Akita has done a great favor for the Euphoria community in developing his SDL libraries. Now he's got an interesting blog going on at Mark's Digital Arts. Check it out!

Also, I've recently switched web hosts (did I tell you this already?). If something's not working, please let me know! Thanks. Now get back to programming. :)

Beginner's Guide to Euphoria Now Online

2006.12.04 David Gay created a very popular beginner's guide to Euphoria that runs as a DOS program. As Jules Davy says the online version "overcomes some limitations of the original format, such as not being able to print out any text or demo programs (which are here listed in the body of the text), and of course, the tutorial can now easily be read by Linux/FreeBSD users." Excellent! Go there now, nubs: David Gay's Beginner's Guide to Euphoria.

Euphoria Goes Open Source!

2006.10.19 I know I'm a little late with this news item, but it's not like you don't get your news from the Official Euphoria Forum. Anyway, Euphoria is completely open and free now, starting with version 3.0.0. I haven't updated my library, yet, but of course I will soon. If you've upgraded, let me know what you think.

Euphoria Goes Open Source?

2006.09.19 Rob Craig announced that Euphoria would be going FREE and OPEN SOURCE. How's that for a birthday present?! (Today's my birthday.) But should we believe this? Canada- from whence hails Rob Craig- uses a different calendar and today is April 1 up there. Okay, I made that up. Maybe this is for real! Stay tuned for more details as they are available (what everybody's saying).

We Have a Wiki

2006.09.07 akusaya has set up a Euphoria Wiki! All you Euphoria programmers need to check it out and start contributing.

Sudoku + Euphoria = Cool Web Site

2006.06.02 Check out Julian Ebeli's web site which features a sudoku puzzle you can solve. The site is served up by Euphoria!

Smart Signature

2006.05.22 I love Juergen's latest signature ("Please excuse my flawed English. My native language is Euphoria."). In other news, there are 36 people signed up at Euphoria's Frappr Map. That's pathetic, people! Where are all the Euphoria users?! :)

Also, I need some feedback on Bernie's xMOTOR series of code includes. It seems to be a very versatile library! If you're using it, drop me a line and let me know how it works for you. (Bernie, feel free to send me some marketing materials, too.)

What Do People Want These Days in a Program

2006.05.01 People are always wanting ideas about what to code next. Well, here's a couple of cool lists that might help you decide what program to make next. First, a lot of freeware utilities, then the open source utilities, and, finally, a list of 101 Fabulous Freebies.

SDL Graphics from Mark Akita

2006.04.28 Is it just me, or is Mark Akita's SDL Graphics Library and Demos pretty cool?! The graphics are nice and smooth on my Intel Pentium 4, 3GHz with 1GB RAM PC. How does it work on your system? He's also got TTF fonts working with SDL. I hope he continues developing this, because when I get rich and am able to devote time to projects I want to do, I'll be using his SDL library. :) [Update (2006.05.01): Igor Kachan has updated Mark's wrappers for international use!]

Where Are the Euphoria Programmers?

2006.04.12 Go to Frappr and register so we can see where we are!

Conversion of Binary Clock from Win32Lib to wxEuphoria

2006.03.03 As a test, I converted Greg Haberek's BinaryClock program. Take a look at the code comparison.

Using Euphoria

2006.02.14 I apologize for not wishing you a happy New Year! So, Happy New Year! Now that the party's over, let's get back to programming. The 2.5t3 release of the Euphoria package (interpreter, Eu-to-C Convertor, etc.) has been released with a new multitasking API. That's exciting... so I'm told. Also, the ESL project looks like it might be getting a little life back into it. I hope so, because it looks important and useful. So, where is Euphoria, now? My assessment is, it's moving slowly but surely. Where does it need to go? I think Matt Lewis' wxEuphoria package needs a robust, versatile IDE, along the lines of Win32Lib Enhanced IDE. I still use the Win32Lib Enhanced IDE because it makes creating the apps I make so easy. I'd rather be using wxEuphoria, however, because it's cross platform, and a few of the forums I visit are populated by a majority of Linux/FreeBSD users! Yes, I work with wxEuphoria, but not as much as I would if it had a fully functional, release-quality IDE. ;)

Euphoria CGI

2005.11.04 I know it's been a long time since my last post, but, like you, I've been busy programming in Euphoria. In particular, my latest job is the MyPrayerList.org web site. It's entirely served up by Euphoria+Apache, using EDS databases in the background. Click the link and give it a try.

In other news, Euphoria is getting multitasking built-in. This somehow relates to threads. If you have any feedback or insights in this regard, let me know.

Threading Euphoria

2005.08.22 I've heard the term before, but don't completely understand what it is. There are some Euphorians who clamor for threads, and now Al Getz has come up with some clever "thread management libraries" (see also 'thread' in Euphoria archive). If you want to understand what threads are, here are some links that I found useful: MIT Intro to Threads Bryan O'Sullivan Georgia Tech's Intro to Threads Wikipedia Entry for Threads

Euphology

2005.08.22 I was adding some links to the Euphoria web ring (see bottom of nav menu to the left) and came across Michael Raley's Euphology web site, which features a white paper he wrote titled "Production in Euphoria." It is a great beginning to what could be a very important resource for Euphoria programmers. (Also, check out Michael's game Warehouser, written in 100% Euphoria!)

New Backend System

2005.08.22 I've changed things up a bit with how this web site gets served. I'm now using two libraries: Kanarie, from Tommy Carlier, and cgi.e, from Brian Jackson and Greg Haberek. I'm switching in an effort to organize my code better and make maintaining the site easier. Please let me know if I've broken something. ;)

Euphoria Serves the Web

2005.08.09 Want to see a very cool web site served up by Euphoria? Go here. Andy Serpa, the site's designer, uses the Kanarie Template System from Tommy Carlier, and a Euphoria Database backend.

Pop Games Get Popular

2005.06.27 All you Euphoria game programmers out there, get encouraged.

CGI Handling

2005.06.01 Ron Weidner (TechPort80) has written an article explaining how to deal with CGI post data using Euphoria. Check it out and let him know what you think.

Euphoric Mysteries Book II

2005.05.25 I had the privilege of talking with Bill Aitken, who's about to publish his book, "Euphoric Mysteries - A Beginner's Guide to Euphoria" (Table of Contents) If you have any questions, please ask!

New EuSQLite Article by Chris Burch

2005.05.23 If you are doing any development with databases, I suggest you take a serious look at Chris Burch's article, "Using EuSQLite - A Beginner's Guide." Well-written and informative, it is a convincing argument for why you should consider using the EuSQLite wrapper originally by Ray Smith but updated by Chris (wrapper downloads).

Show Some Skin and Win

2005.05.19 There's a new contest in town, and there's software and cash in the prize pot. See this page for complete details, then get to work!

Best of Euphoria List

2005.05.17 A question I get asked pretty often is, "Which code library is best?" So, I've started a list and survey to get input from the Euphoria user community. Check out what I've got so far and let me know your opinion.

Euphoric Mysteries Book

2005.05.13 You might've read on the Euphoria web site on the Related Books page about Bill Aitken's book "Euphoric Mysteries," due out "October 2004." Looks like Bill's running behind, but it's going to be worth it! He allowed me to review the first few chapters and it looks great. A book for beginners, it covers the basics of programming with Euphoria from installation to atoms and sequences, then gets into programming with Judith Evans' IDE and the Win32Lib. Comprehensive, yet easy to read, this will be a great introduction to Euphoria for new programmers.

wxEuphoria 0.6.0 is Out

2005.04.20 I'm using wxEuphoria for all my Euphoria GUI development. Check out my new wxEuphoria page!

Giving Euphoria the XML

2005.04.20 Besides the many excellent XML offerings in the Euphoria archive, there's now a library to work with eXpat. Here's a little blurb about eXpat I got from their website:

"eXpat is a library, written in C, for parsing XML documents. It's the underlying XML parser for the open source Mozilla project..."

Independent Game Programmers (That's You)

2005.04.01 Wired has a cool article on independent game developers. I know there are many of us who fit that category. It was nice reading about others' experiences and comforting to know there are others in the same boat.

Euphoria Custom Interpreters

2005.03.28 There are several modified interpreters available in the Euphoria archive. These modified interpreters enhance and extend Euphoria's base functionality, providing additional features like built-in object orientation, block commenting, etc.

Euphoria Classes at Game Programming University

2005.03.05 There is an "Introduction To Euphoria Programming" course getting started over at the Game Programming University. They are enrolling students now, so if you're a Euphoria programmer, get over there and check it out. The next class will be more advanced and will focus on the design of a game engine.

Exploring Numerical Integration

2005.03.03 I'm very tempted to download Don Cahela's Runge-Kutta Numerical Integration package. I'm both curious and intimidated at the same time. The description says (in part), "Stiffly accurate generalized Runge-Kutta method SGRK23 to solve sets of stiff ODEs including problems with full, sparse, tridiagonal, or pentadiagonal jacobian matrices." I have no idea what that means. I feel an education coming on.

Euphoria Hosting

2005.02.24 This web site is hosted on WebIntellects servers. I don't think I've ever experienced downtime on any of the sites I host with them. Plus, their tech support is "5-out-of-5 stars" in my book (and for less than $10 per month!). Tell them I sent you. ;)

Control those Widgets

2005.02.16 I don't like a static-sized window (one that you can't resize), because I like the flexibility. If I go to a higher res, I want to be able to take advantage of that screen space (and I assume so do my users). Recently, Patrick Barnes (MrTrick) updated his AutoSize library. It's very easy to use and now much more comprehensive, including the ability to set a minimum window size and attach controls to other controls. I just took about ten minutes to update a program my company uses to distribute our products. Now it's no longer static sized! Check it out.

Chatty Euphorians

2005.02.11 Don't forget! There is a Euphoria IRC chat channel where you can chat with other Euphoria programmers. Somebody's usually there, and they're always friendly (even to newbs!).

Euphoria OS?

2005.02.03 I sometimes get asked if Euphoria could be used to program an operating system. If you ask Ryan Johnson, he says you could get close! His FluidAE "application environment" looks very interesting and could change the way people think about Euphoria.

Article Requests

2005.01.28 Real life catches up and the printing article goes to the back burner. I know you know how I feel. Anyway! I'm starting a List of Article Requests that, if you're willing and able, you can write for this web site! You won't get any money, but you will gain notoriety.

Coming Soon...

2005.01.21 Just an update on a few things coming up. 1) I'm continuing work on the GUIphoria series of eBooks (Part 1, Part 2). I'm hoping to finish Part 2 by the end of January. I'm moving towards teaching only the two cross-platform libraries for this. I think once either one has an IDE, there's no point in going single-platform anymore. If you have an opinion about that, let me know. 2) I'm going to do an article or series on printing with Euphoria. Irv Mullin's easy-to-use printing library was mentioned on EUforum. I checked it out and liked what I saw. Then I saw a few other printing libraries that are pretty impressive, especially Pete Lomax's Print Preview and Report Generator code. Wow! Stay tuned...

Euphoria Desktop Help Update

2005.01.17 Brian Broker has created a compiled HTML file (CHM) for Euphoria version 2.5. His version for Euphoria 2.4 was a constant companion of mine; no doubt this one will be as well.

Euphoria Editor of Choice

2005.01.17 I'm dumping UltraEdit-32 and trying Crimson Editor. UltraEdit has an annoying bug with its open-from-FTP feature and I've withstood it long enough. Crimson Editor is free and has Euphoria syntax highlighting. I'm also going to give MEditor a try. I don't think it has HTML syntax highlighting, though, which I use on a daily basis.

Euphoria Desktop Help

2005.01.11 One of the most helpful archive contributions I've used is Brian Broker's Euphoria Help file, a compiled-HTML file. Unfortunately, I haven't voted for it like I should (apologies to Brian for that oversight). Brian's help file is for Euphoria version 2.4. If you're looking for a help file for version 2.5, check out Dan Everingham's F1 Jockey. I just noticed it in the archive and it looks great. You can also search the RDS archives for more "helpful" files. If you have any other Euphoria help ideas, let me know.

GUIphoria (Programming GUI Apps with Euphoria)

2005.01.07 In case you haven't noticed, I've posted my GUIphoria eBook. Currently, the only section is an exploration of a few GUI libraries for Euphoria. It is a short primer on using these libraries. I hope it's not too much information, but still enough to give you some idea of how to code a GUI application with Euphoria. I'm working on an advanced section. If you have any contributions, please send them my way.

Insight Concepts Article

2005.01.04 I had the privilege of interviewing Christopher Bouzy of Insight Concepts... (More...)

OpenGL Demos

2004.12.29 I've dabbled in OpenGL, so I like to see what other people are doing with Euphoria and OpenGL. Practicing01 has put up some OpenGL demo code, and it looks very cool.

New Article

2004.12.27 A new article posted: Speed Freaks.

Code Snippets

2004.12.23 I'm starting a new section for publishing code snippets. If you have a block of code that's very efficient at what it does, please submit it to me. Otherwise, have a look-see at these efficient algorithms.

Upcoming Articles

2004.12.21 You'll notice the Articles section is live (and there's a link in the navigation panel to the left). There are two articles in the works: one is an interview with Insight Concepts' president Christopher Bouzy. The other is an interview with the winners of Derek Parnell's Euphoria Coding Contest.

If you have an article you'd like to submit, please submit it! I'd like to make this a library of useful texts for learning Euphoria programming, for all levels from beginners to advanced.

Article Submissions and a New FAQ

2004.12.16 I'm thinking of starting a library of articles for programming Euphoria. What do you think? If you've got an idea for an article that other Euphoria programmers could use, or if you've actually written an article, please let me know.

I'm also in the process of compiling a FAQ. Please submit your questions and answers about Euphoria (or even programming in general) to here.

Object Oriented Euphoria v1.1

2004.12.14 Matthew Lewis continues to do improve his new Object Oriented Euphoria v2.5 Alpha interpreter. This version has a few bug fixes plus some added functionality. I'm hosting his OOEU project code (to help ease his bandwidth usage). Get it here.

Object Oriented Euphoria v1.0

2004.12.12 If you've been wanting built-in objects for Euphoria, now you can get it. Matthew Lewis has released an object oriented Euphoria v2.5 Alpha interpreter. The docs say in part:

As-is, this code allows you to use some object oriented techniques with Euphoria, without the added overhead or clumsy syntax that an added Object Oriented library requires.

Euphoria Coding Contest #2 Resumes

2004.12.10 Patrick says the contest is back on as scheduled. There's a lot of new stuff at his site, including new maps and a "Swarm" bot against which you can test your own bots. Go get it and get those bots entered.

Euphoria Coding Contest #2 Postponed

2004.12.09 Patrick Barnes has been swamped with holiday business, so he's extending the deadline for Contest #2 entries until the end of January. That gives everybody even more time to refine those battling pixels. You can read the rules and download the code at the official Euphoria Coding Contest #2 website.

News Server Now Automated

2004.12.09 These news articles are now being read from a database! No more formatting the HTML for the articles manually. And it's all being done with Euphoria.

wxEuphoria Updated

2004.12.08 Matthew Lewis continues to enhance his wxWidgets Euphoria interface. The latest release (0.4.0) now includes sockets functionality. He's got a sockets demo as well as a wizard demo (shows how to build a "wizard" app). Cross-platform is the way to go, now and (especially) in the future.

New Windows GUI for Euphoria on Horizon

2004.12.07 I don't want to jump the gun, but I know an alpha-alpha release is around the corner. Tommy Carlier is developing Win4Eu, an "object oriented" Windows API GUI for Euphoria. It's already sounding (and looking) good. One of the things I'm excited about is that it will be skinnable from app-level to control-level! The only problem I have with it is that it uses exclusive features of Euphoria 2.5 (alpha), and I'm not upgrading from 2.4 until probably 2.5 Release.

Front Page Redesign

2004.12.07 New site design to allow for news items on the front page. All my Euphoria code has been moved to the Programs, Projects and Code Repository.

Euphoria Contest #2 Starts

2004.12.03 After the successful completion of Contest #1, Patrick Barnes offers Euphoria Coding Contest #2, dealing with programmable fighting pixels. You can get my handy Win32 interface for it here.)

Euphoria Coding Contest #1 Results

2004.12.01 Derek Parnell hosted the Euphoria Coding Contest #1, and the results are in. It was an exciting contest and there's lots of incredible code to study (all contest entries are available in a zip file). Congratulations to the top-three entrants!

Euphoria 2.5 Alpha Ready for Testing

2004.11.15 From the official RDS website:

The much anticipated 2.5 release of Euphoria is now available. Read the release notes and download the code. In addition to bug fixes and new language features, there has been a major internal restructuring of the code... In addition, there is now a complete Public Domain source version of the Euphoria interpreter. (More...)

For complete details on all the changes in version 2.5, see the Euphoria Release Notes.