Older blog entries for bowis (starting at number 4)

Ok, I was up till 5am last night hacking in a CoolFeature(TM) into ferite. Basically you can now specify another script in the uses's line (surrounded by quotes). Ferite will take this and compile it into itself so you can use those functions and classes. There are a number of things that need to be cleaned up regarding this, better "this function already exists, guv'nor" - throw an error, the parser and lexer need to be made a little robust (only allows for one level of embedding -> requires alot more (easily done via a stack)), and finally search paths to allow the engine to load up the scripts in different paths (so libraries can be written in ferite :)

Sundays can be so much fun! :)

11 Dec 2000 (updated 11 Dec 2000 at 11:40 UTC) »

Ok, it's currently the earliest I have ever been up, I am facing a pile of Java work that has to be done by thursday or I can kiss good grades away. And for some reason I am sitting here doing some optimsations to ferite.

I have basically just converted a load of stuff that used to use a linked list to store information over to hashes (my new favourite data structure/algorithm FYI: i like the sheer simplicity of the idea and how with a few tweaks it's quite quick :)), which at the moment shouldn't make too much difference but when class's and object start having large number of methods they will come in handy. The next step is to make the scripts have there functions stored within hahes. yum. After this little escapade I shall add caching to the hashing so that items that get used regularily are quickly found. I have also made a number of fixes pertaining to class's which someone found. For those of you interested as to what a ferite script looks like, here is an example script.

And on that note, I am off to get ready to goto uni and hand in a Software Engineering essay.

Ok wicked, this rocks. I have been playing with class's in ferite now for a little while and they rock. There is alot of work that is needing to be done (ie make them more stable) but that shouldn't be too tricky because most of the class code has been battered about by the native code (internally they both look and feel exactly the same - this is nice because it means that a native class will be able to inheirit from a script class and a script class from a native class and mingle code about, toy++).

DEEP BREATH

The next step is to fudge with inheiritance so it a) works and b) is fast.

I have been working hard still on ferite. I finally moved the source code out of the enlightenment cvs tree and into it's own tree on sourceforge. The project home page is here and the project summary page here. As per usual I am looking for more people to join the development team. I have also been secretly working on bwm - boris's window manager and TruePath my little play with RPC.

bwm is a hack on pwm and adds theming via Imlib2, and better menu code, all in all it looks alot nicer. TruePath is a RPC lib that can switch it's messaing between TCP/IP, unix sockets/pipes and SHM. It was originally designed for another project but allows simple communication between two apps at the programming langauge level.

I have also updated my homepage :-)

Well life looks to be fun. I am off to YAPC::Europe this weekend, but before that I have to go downto london to meet attyz, and also hook up with giblet, and Jaded to goto the Lonix meetup. I also have to move all my stuff up to University Friday afternoon/evening, and then go back downto london first thing saturday for YAPC. I am looking forward to meeting other perl people just to see what they look like :)

ferite is coming along nicely - currently working hard on getting arrays up and running and writing a number of routines to make interaction clean, other than that switch(), break and continure statements come next and that is v1.0 of ferite's langauge specification done. Next comes the writing of documentation and modules. Then a release can be done.

For those of you unaware ferite is a highly embedable lightweight scripting engine. email me if you want more info :) (it's also object oriented - ... which is nice)

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!