2004-09-26

GMail Invitations

I've got 6 GMail invitations. You want one? Just write a comment on this post, and include your e-mail address.

2004-09-25

Win4Eu base-library

This weekend, I'm writing a large part of the base-library (w4ebase.ew) of Win4Eu.
Today I've written the class- and object-system that is the essential core of Win4Eu.
Euphoria is not an object-oriented language, and doesn't have to be object-oriented: the power of Euphoria lies in its simplicity and its advanced sequence-system.
But, the Win4Eu-architecture requires a minimal object-oriented system. So I created such a system, specifically designed to include all the functionality required by Win4Eu (classes & instances, simple inheritance, verbs (=system-defined methods), properties, events, ...).
After writing the code, I changed the design document win4eu.pdf a bit, to match the written code.

2004-09-24

New Win4Eu Design Document

I've uploaded a PDF-document, giving some more details about the architecture and ideas of Win4Eu: win4eu.pdf (64 kB).

2004-09-22

Static destructor in C#

C# (and .NET in general) offers static constructors for classes, but why are there no static destructors? I needed such a static destructor for a class that had to clean up resources. So I created a little helper-class that adds static destructor-functionality to a class:
public delegate void DestructorDelegate();
public class Destructor
{
    private DestructorDelegate destructorMethod;
    public Destructor(DestructorDelegate method)
    {
        destructorMethod = method;
    }

    ~Destructor()
    {
        if (destructorMethod != null) destructorMethod();
    }
}
Here's an example that shows how to use it:
public class MyClass
{
    private static Destructor myDestructor;
    static MyClass()
    {
        DestructorDelegate destructorMethod;
        destructorMethod = new DestructorDelegate(this.Destroy);
        myDestructor = new Destructor(destructorMethod);
    }

    private static void Destroy()
    {
        // this is the static destructor-method
    }
}
Updated Nov. 4th 2005: bug fix, thanks to mIKEL.

2004-09-17

Updated Win4Eu architecture

I updated the architecture. The basic Win4Eu routines are more global.

2004-09-15

Win4Eu: First design

You can view the following files, concerning the design of the Win4Eu-library:

2004-09-13

Win4Eu

I'll call my Windows-library Win4Eu: Windows programming for Euphoria. I've created a Win4Eu-forum on the UBoard (unofficial Euphoria Messageboard), where you can find the latest news, and post your ideas, suggestions and requests.

2004-09-12

Squares 2

Check out this beauty of a game: Squares 2. It's a simple concept, with very simple graphics and a nice background tune, but it's addictive as hell.

New Windows library for Euphoria

I decided to write a new Windows library for Euphoria, kind of like a new Win32Lib, but with a different architecture. It will be designed to be modular and extensible. The design is based on the idea of components: individual parts that can work together, but who's functionality is separate. You can compare it with controls in Win32Lib: Controls are visual components. If you have ideas of what the new library should include, please let me know. I haven't started coding yet, I'm still working on the design of the architecture. So if you send me your ideas now, I could implement them in the design, before coding has started.