Showing posts with label multi-level undo. Show all posts
Showing posts with label multi-level undo. Show all posts

Thursday, November 15, 2007

First Draft of Undoable Threaded Binary Trees Finished (Finally!)

I've got a final draft of undoable threaded binary trees in the Umeta Sourceforge package of the JUndo Runtime project. Now I can actually use it for something...

Wednesday, November 7, 2007

Undoable Threaded Binary Trees Almost Completed

The latest draft of the umeta package of the JUndo Runtime Sourceforge project is now up (version 0.0.12). This update moves the binary tree classes much closer to completion. Hopefully I'm close to wrapping up umeta (at least in an initial draft).

Sunday, October 21, 2007

New Umeta Update-- 071021 (Undoable Threaded Binary Trees)

I finished more code for undoable threaded binary trees. Hopefully, I'm getting close to wrapping this up. It seems like I've been working on nothing but trees for a while now. At the same time, the code does show how general a language JUndo is becoming (assuming anybody is reading it).

Saturday, August 18, 2007

New Verdantium Version -- 0818 ; Book "Beyond Java"

I think I now have a fully working (except for bugs) version of undoable verdantium.standard.DrawApp. All of the persistence code is in now. I have done some smoke tests on the persistence, and it seems to work. This should be the full implementation.

In addition to Verdantium, one also needs the latest versions of Meta and the JUndo Runtime for this to build and work.

All I need to do with this now is fix bugs, documentation quirks (e.g. lack of copyright headers), and other small issues. I also might want to make some of the code more elegant, but that's an issue for later.

On a completely separate note, I purchased an interesting book this morning: "Beyond Java" by Bruce A. Tate (O'Reilly). On one hand, I applaud this book for raising the question of what is beyond Java. I think there are issues that Java and C# don't address. I had to write JUndo in order to address some of these issues. However, I am completely perplexed by how the author selected which languages were important, and which languages were not important. The book considers Python, Ruby, Groovy, and .NET (mostly C#) as major contenders for next generation languages. AspectJ only gets ONE SENTENCE in the entire book. The author doesn't even consider whether the next major programming language might be aspect-oriented. AspectJ deserved much more than one sentence of mention from this book.

I think Java has a few more years in it, particularly since many Java developers haven't even upgraded to JDK 1.5 and generics yet. Nevertheless, the time has come to think about what's next after Java and OOP. The idea for the book was great, but the book's implementation of that idea left me wanting more. One can find several projects on either Wikipedia or Sourceforge that seem significant, but get no mention in the book. For instance the language Pizza was never widely adopted, but was tremendously successful in demonstrating how generics could be added to the Java language. JDK 1.5's generics probably owe something to the Pizza language. Languages that never get wide adoption can be very important in defining the future of programming, and I wish this book would have included many more obscure languages.

Sunday, August 12, 2007

New Verdantium Version 0812

This was another day in which I have been doing a lot more coding than blogging. As in previous days, I have been continuing to work on the new version of class verdantium.standard.DrawApp. Today I got some persistent writes to work from the new DrawApp. Haven't had a chance to test persistent reads yet.

The new Verdantium requires downloading a new JUndo Runtime (both the jundoruntime and umeta packages). Otherwise, the new persistent writes won't work at all.

I also uploaded a new version of the JUndo compiler. Very small changes here. Mostly I fixed some nebulous error message generation.