RLL vs DLL and support of the standard C libraryJust after first appearance of ProWesS, there was a vivid discussion about the use of DLL (or more precisely, comments on the fact that I didn't use RLL). In hindsight, it is good that I didn't wait for RLL to appear. However, I have to
admit that the DLL system also has some limitations. In the last nine months there have been some discussions between Dave Walker (who coordinates the RLL development) and myself about the integration of RLL and DLL. The result of this is that I have some input about some supported features of the RLL system which will allow the DLL system to be replaced by RLL when it appears. According to Dave Walker's web site, the RLL system is quite close
to being finished. When the RLL system will be available, this will open up lots of new developments. ProWesS encourages (almost forces) programmers to forget about the standard c library and only use syslib. This was a bad decision from my part, which probably limited the use of ProWesS by some of the programmers who already wrote c programmers before. Therefore, once RLL will be available, it will be
possible to combine both ProWesS (notably syslib) libraries and standard libraries in a program. I hope this will be done by building the standard libraries on top of syslib, but this has not been coordinated yet (nobody has volunteered to do it). Another very important result of this will be that many standard libraries will easily be ported to the QL, and ready to use in ProWesS applications. This
will have many useful effects. Some of the libraries which immediately spring to mind are freetype (to allow TrueType support in PROforma), zlib (a good compression library, also used in gzip etc, allows programs to write compressed files, which can make file manipulation much easier, and which a.o. is used for the PNG graphics format), wwwlib (from w3o) which is useful for internet programs. In
principle, it is not really necessary to make sure the standard c library is build on top of syslib, though it could reduce total size of often used DLL's. One thing that I really would want to see modified in the standard c library is the handling of stdin, stdout and stderr. I would prefer these files to be created only when used. This way, they exist when used (often for debugging), but do not clutter the screen when not necessary (e.g. because ProWesS is used for all windowing). |