Image 01
profile-image

unclewerner

Frank Mertens Jena, Germany
QTreeViewer

Qt Tools by KL-7 5 comments

"Clustering" is an invention of mine. I took a B-tree (B for block or Bayer?) and sorted the elements stored with each node. Because the elements were stored in sorted arrays I could use binary search to lookup an element by value... At this point the access pattern looks like a binary tree lookup and the question opens up if I could go the other way round. Take a binary tree and align the elements stored in a subtree to a memory page.
The most common issue with binary trees is that they don't scale to virtual memory, which could be solved at this point.
By the way, the same holds true for in-memory hashes. Reading the binary number along the search path gives nothing more than a perfect hash sum. For instance the Ruby gems package manager fails on systems with low memory because of using hashes that don't scale in memory.
Also when paging out a subtree it could be stored as a sorted array, greatly increasing the memory density of the binary tree. For read-only access you wouldn't need to unpack the array -- simply go with sequential read or binary search.
Anyway, that's all part of my theory dream worlds and I have practically no time time to follow those paths...
For my study papers I was used to take graphviz. Having some graphviz style data import and printing would be nice, too.
- Sep 16 2009
QTreeViewer

Qt Tools by KL-7 5 comments

Rotations allow equivalent transformation of the tree. There are only two rotations defined. I remember it was quite fun to invoke rotations by clicking on nodes and watching the structure to change. This allowed me to develop a natural understanding of tree balancing algorithms... But where I left the code?... hmmm...

When talking about random access I was thinking about index access. When you know the number of elements in the left and right subtree you can easily decide where to go, if you are looking for the n-th element stored in a tree. Yes, traversing from the root takes O(n)=h.
- Sep 15 2009
QTreeViewer

Qt Tools by KL-7 5 comments

Looks like a useful app. I remember writing similar applications during my studies some years ago. One thing that changed since then: node pointers are now most likely 64 bit and node payload therefore doesn't matter that much anymore.

Things I'm missing:
* scroll wheel zoom
* node rotation via context menu

Some pointers from my sources:
* http://trac.cyblogic.com/libPONA/browser/pona/BinaryTree.hpp
* http://trac.cyblogic.com/libPONA/browser/pona/AvlTree.hpp

One thing I really would love to explore with binary trees is keeping node counts with each node. Each node would store the number of nodes in its subtree and thereby would allow O(n)=c*ld(n) random access on the tree. Of cause such node counts would need to be updated during insertions/rotations...

And what about clustering nodes to memory pages, well ... I'm day dreaming.
- Sep 14 2009
Konzept

Developers Apps by unclewerner 17 comments

It's still a Qt3 application. You need to have pyuic point to pyuic of pyqt (version 3). The 'Makefile' is actually only a few lines. - May 27 2009
Konzept

Developers Apps by unclewerner 17 comments

I guess, it's a bug of your imagemagick SVG rederer. Can't do much about it for now. - Nov 05 2007
Konzept

Developers Apps by unclewerner 17 comments

EPS export is not supported directly. Maybe a future version will have this feature. To embed diagrams into your latex documents you can print to file which generates a postscript file and convert these output file to EPS. (Maybe you know the "ps2epsi"?) - Oct 27 2005
LavaPE

Developers Apps by guenthk 3 comments

I really love the idea of editing syntax trees. But a simple question pops up in my mind.

You ever considered to develop a structure editor for a subset of an established language, for instance like Python, Ruby or C++? - Oct 24 2005
Konzept

Developers Apps by unclewerner 17 comments

I don't feel good about code generators or retro-tools. But any suggestions about how to get Python support integrated are very welcome. Maybe it changes my mind about that topic. - Oct 19 2005
KAlgebra

Education Apps by apol 62 comments

Maybe this instruction helps: make -f Makefile.cvs ./configure && make -j2 Make shure your QTDIR and PATH is set correctly. - Oct 17 2005
Konzept

Developers Apps by unclewerner 17 comments

Oh, thanks for that comment. Now it's available again. - Oct 15 2005
Flash Editor

Graphic Apps by zvonSully 68 comments

Klash? - Sep 26 2005
KAlgebra

Education Apps by apol 62 comments

http://www.cyblogic.de/~frank/fun/kalgebra.20050823+qfmplot.tar.bz2 I patched KAlgebra to use my plot widget and hope you like it;) May save you some time to become to bored about 2D gfx -- 3D is anyway more interesting. http://www.cyblogic.de/~frank/fun/kalgebra_with_franks_plot.png I couldn't handle than automake system and simple wrote a qmake project file. You know to use qmake? I'm still in the newbie club. I hope you are not to angry about modifying to much of your code structure. kompare may explain it. A single problem I noticed is, that my QfmPlot can't handle nan. You may not feed functions in range where those functions are undefined. - Aug 28 2005
QTreeViewer

Qt Tools
by KL-7

5 .8
Sep 14 2009
KBasic

Developers Apps
by berndnoetscher

5 .0
Jun 03 2009