OK, it is a kind of "blogg".
100723:
"Big summer upload", which means that I have made some progress recently. Lightweight IDE is progressing slowly, simply waiting for TransSkel 5 to move in, but this version is particularly nice. Startup is faster and it never locks up on launch. TransSkel 5 is now officially "beta", since the last planned component, a list management unit, now works and is included. NSStandardFile, which is part of TransSkel, now has support for file type lists and presents very nice sheet-based file dialogs.
Finally, for those of you who want to learn Objective Pascal from simple examples, I also upload a package with Objective Pascal demos that is much bigger than before. It includes menus, toolbars, tables etc. All this code has been developed as experiments when writing TransSkel, but most of it is stand-alone.
100705:
Summar, it is hot, and I spend much time with my family. However, I also do some development. I have a mostly working Cocoa version of Toolbar Manager, making it a lot easier to work with toolbars (even though I don't like them much myself). However, developing with the NSToolbar is weird, even horrible. It is too much hit-and-miss programming, where subtle changes give strange errors. On the positive side, I will be able to upload not only my Toolbar Manager wrapping (similar to the Carbon one, really really easy to use) but also at least two demos, one of them much simpler than Apple's ones.
We all did some handpainted plates recently, and I made this:

I think it came out rather nice. :)
100621:
I have been silent here for a while. That is not for lack of progress, but since I have taken a fairly big leap with TransSkel recently, and now I think it is stable enough to justify another upload.
The big step today is TransEdit, the missing part from old TransSkel and one that is essential for using TransSkel for Lightweight IDE. The only visible thing that is notable is the line numbers in the DumbEdit demo, and that may not seems like much. However, many sources on the net will agree with me; adding line numbers (and thereby also breakpoints etc) is remarkably hard with NS. But now it seems to work well.
Another change is the improved support for sheets (namely in NSStandardFile). Now open/save dialogs can look quite modern.
There are also several interesting but not as important demos. There are demos for using the accelerometer in MacBooks (a.k.a. the SMS, Sudden Motion Sensor), and there are also two new demos showing how to put an OpenGL context in a SkelView.
100609:
Breakthrough in TransSkel opens the door for the Cocoa/NS rewrite of Lightweight IDE!
For many months, I have had one unsolved problem, namely to make a complete editor with certain customizations, namely a breakpoint field that follows the text just as it does in the Carbon version of today. That same field can be used for line numbers and whatever. This was a surprisingly hard problem, and I had to wade through several demos and write many experimental programs until I found something that works and is stable. (This was the problem I mentioned on 100527, below.)
Another, less problematic problem that I have solved recently was to support sheets in save dialogs, and implement that in the StupidEdit demo. Only very small changes were needed to TransSkel to make this elegant.
This means that I can, finally, start moving the Lightweight IDE project from Carbon to NS. I have wanted to do that for almost three years (ever since Apple officially scrapped 64-bit Carbon) and now all the essential tools are in place. And those changes also means that the official, complete TransSkel 5.0 is getting closer. It is hardly an alpha any more. It looks more like a beta.
100530:
Today I uploaded an installer that installs FPC 2.5.1 and the Cocoa interfaces as one single standard installation. If you have had problems getting started with Objective Pascal, this reduces the problem to two simple steps:
Note that Apple's developer tools are a prerequisite. I have tested the installer under OSX 10.5 only, on an Intel Mac.
I am also working on the problem of making a base installation of the developer tools, that is the open sources parts, as a separate installer. I can't redistribute the whole SDKs without Apple's permission, but the open source parts should be no problem, and that would be a smaller download and a single installer for GCC, FPC and the vital components.
100527:
I have been doing teaching and some research work mostly unrelated to the projects here, but also done some work on the Lightweight IDE related topics. Most importantly, I have been tracing town a strange problem that caused my applications to crash on exit. The problem turned out to be the inclusion of some built-in units, interfaces to C libraries, and what bothers me a bit was that I got the crash even when not calling anything, and the problem was the order of the units in the "uses" statement! But it is solved now.
A harder problem is to figure out why my custom NSTextViews crash on pasting in large amounts of data. I have some very nice NSTextView demos running, which will be perfect for replacing the old TXN editor - once they stop crashing!
Finally, I have been drafting some possible reorganizations in Lightweight IDE. I am not sure if it is worthwhile to make Lightweight IDE fully customizable, so you can add support for new languages without recompiling. Face it, Xcode is so horribly complex that it is a big task to add incomplete, awkward and totally insufficient support for a new language. Well, you know that; that's why I got started with LWP in the first place. But by working a bit on the modularity on LWP, I could make it really easy to add support for a new language, with a recompilation. It is not bad at all, but you have to make changes in 3 or 4 separate places, and that could be improved.
Now I will spend some time reading the students' project reports. Some of it will be fun reading, since my students (in computer graphics) have done some very nice projects. I only wish some would consider working with LWP, and with FPC.
100510:
Today I upload the second alpha for Sprite Animation Toolkit 3, with a nice and useful point-in-sprite function. It is likely to be very useful, but I know there is a likely bug, namely when the window is scaled. But I will get to that.
Recently, TransSkel 5 reached its seventh alpha, incluing QDCG version 1.3 with some nice arrow/end cap routines that go way beyond anything CG can do. The new demo for that functionality is quite fun to use. :)
And on top of that, I decided that Lightweight IDE should have a re-open functionality, to remember what files were recently open and give the user the option to re-open them. This is not implemented yet, but it is likely to be fairly soon. It would be a good work-around for the well-known but elusive bug that makes process launching fail sometimes.
The set of projects has grown a bit large. On top of this, I have work and family. I'm not complaining, rather I am quite fond of these projects (Lightweight IDE, TransSkel 5, QDCG and SAT 3). I just worry about the speed of progress. Of course, they have much in common. TransSkel is a foundation for Lightweight IDE, and QDCG is a tool for the same work. Only SAT is relatively separate. So in a way it is two projects, I guess.
I take one thing at a time and try to move on ahead.
100426:
TransSkel 5.0a6 with QDCG 1.2.
The big deal here is that QDCG is given a version number. It had a 1.0 at the last Carbon version, then I updated for Cocoa, no numbers, but after a whole bunch of additions I think it is worth numbering. So 1.2 it is (1.1 is the one in TS5a5).
And this is a pretty big QDCG update! PDF loading, saving and recording! GWorlds! Shadows! The PDF support is the big thing, making it almost a full replacement of PICTs (and some more).
100425:
First alpha release of SAT 3!
This is pretty big to me, Sprite Animation Toolkit is back on-line! It isn't finished, there are several important features left to add (collision detection global phase, scrolling worlds etc) but this should be usable. Anyone who feels like being alpha tester is welcome. As before, it is free as long as I get credited for my work, but now it is also open source! (FPC of course.)
100420:
A minor Lightweight IDE update, but there is a lot more coming. I have done more work on QDCG, and now it is getting close to "full featured". How about PDF loading and creation? Clip regions? There are some design choices to get right, but it all works nicely, so well that I feel I should consider C interfaces too. TransSkel is also moving. I have preliminary code running for lists, toolbars and better text editing. I only have to make the API for them. That, however, is not entirely trivial.
100415:
New upload today, of an updated TransSkel and much more updated QDCG!
I have decided to abandon Carbon in the QDCG code. It will reduce the number of Y flips, and it takes a few already.
And with the new TransSkel, I also release a little game, TransSnake. It is a very basic Snake game, could use better graphics as well as sound, but it works! And it shouldn't be more complex as a TransSkel demo.
100404:
Much work right now, quite a bit at the university, but I have also managed to spend some time on ObjPascal. More specifically, I have been working on text editing. I have been through all possible ways to add a field to the left of the text view, just like LWP has now, and there are so many gotchas and complications... It is even worse than TXN! But on the positive side, I hope that the final resuilt will be a lot better than TXN.
I have also made some other tests, new demos using lists, and a demo for scrolling an arbitrary NSView. The latter is very useful and I think it will be easy to use, especially if you use a SkelView.
Finally, I am now phasing in QDCG as primary drawing API. The API is great, as simple as QD but can do so much more. A few things are still missing, like patterns. On the negative side, I really wish Apple would have made the coordinate systems a bit less messy. CG has Y-up, QD has Y-down, Carbon HIViews has Y-down, and NSViews are a bit of both, and sometimes is such a mess that you really don't know how to avoid getting the text upside-down.
As mentioned below, I should release 0.8.6 soon, but I don't know if anyone is really asking for using GLSL and OpenCL with LWP at this time, except myself, so I take it easy and maybe I'll add something more.
100322:
Two new demos. I made my own version of GlutGears last winter (based on a classic demo) but didn't upload straight away. ToolbarSample is brand new, ported from ObjC, part of my ambition to get a more complete set of functionality through ObjP and eventually TransSkel. What comes next? 0.8.6 will come any time, with improved GLSL and OpenCL support (for color coding and code navigation - compilation is no problem). Maybe new demos too.
100308:
No release at all in february, for good reasons. But now I'm back! With CUDA support! I am particularly proud of the two included CUDA demos, both written by myself: One is the simplest CUDA demo I ever saw, and the other is a real "Hello World" for CUDA, the only I know that deserves the name. There are several simple demos posing as "Hello world" but that are neither minimal nor focused on what "Hello world" should do.
100129:
Lightweight IDE/TransSkel development is slow now, due to much work at the university. Today's upload is a minor one, fixing one bug that could make some C code fail. Source-code uploaded too. I will get back to my FPC projects when I have more time.