Tuesday, August 22, 2006

Examples

I am very close to another release of DScript. The executable is build and I'm working on documentation and examples now.

After the release of DScript 0.10 some people complained, that there were no example scripts. Probably justified. But it isn't easy to come up with a good example. A good example is simple and self explanatory. So what data can we create? It needs to be in a format very well known by lots of people. This rules out most interesting options already. So we are left with a few standard formats: DrawFile, Template, Sprite and a few others. I finally decided for DrawFiles or rather a subset of this format, since a DrawFile is pretty complicated.

While working on the examples I found two more bugs. The first one affected the @@-expression. @@ gives you the current address, but I took the address when creating the expression object, which doesn't work from within macros. Easy to fix. I am glad, that I found this bug so early.

The second bug is something I am not happy about. It is a compiler problem, one I knew about for a long time. But I didn't notice, that it affects DScript in this particular way.

It makes a program crash, when an exception is thrown (which happens a lot in DScript's error handling), but only in the release version (which is compiled with -O2). The development version is not affected, which is the reason, why it took me so long to notice the problem.

The obvious solution is to switch from the ages old 2.95 compiler to 3.4 (done that already for SRPG). That should fix the problem. But 3.4 has another problem (I wrote about it before). It makes working on SRPG a very annoying task and I simple don't want to add these kinds of trouble to another project.

For now I compiled the release version of DScript without the -O2 switch, so it will be a bit larger and a bit slower.

0 Comments:

Post a Comment

Links to this post:

Create a Link

<< Home