RubyTree is a simple to use general purpose tree data structure implementation in Ruby. It provides easy access methods for navigating the hierarchy, as well as for accessing the nodes. It also provides ability to marshal the entire tree structure. The library provides a generic tree as well as a binary tree implementation. It is available as a RubyGem or standard Tar/ZIP packages.
File-Find-Object-Rule is a port of File-Find-Rule to make it use File-Find-Object instead of File::Find. It provides a succinct, declarative syntax for creating directory tree traversal routines while enjoying the advantages of File-Find-Object, such as traversing the tree incrementally and iteratively, and the capability of instantiating several traversers in the same program.
sqlamp is an implementation of Materialized Path, an efficient algorithm for working with hierarchical data structures. sqlamp uses (and depends on) SQLAlchemy. Materialized Path is a way to store (and fetch) trees in a relational databases. It is the compromise between Nested Sets and Adjacency Relations in respect to simplicity and efficiency.
Treep is a simple language for doing symbolical computations. It operates on numbers and strings that can be organized in more complex objects. These objects are lists of name-value pairs that are stored in memory as AVL trees. It has about sixty built-in functions to operate on such data and a way to define new functions. Treep syntax very much resembles Lisp. The power of treep is its simplicity and security. Treep is a good tool do process objects and relations between them. For example it is possible to define graphs as a sets of vertices and edges in text file, parse that file, do any computations you like, write modified data to text file. Treep works well on graphs, trees, linked lists, simple hashes. Treep is not good at processing texts, dealing with system input/output.
Self-Adjusting Top Tree Implementation maintains a forest that changes over time through edge insertions and deletions. This implementation focuses on the simplified Top Tree interface, which allows you to solve a number of interesting graph problems like finding common ancestors, the heaviest edge, maintaining the diameter, center, or median and other (mostly network flow) problems. Using Top Tree interfaces, all outline problems can be solved in a clean declarative way. This implementation uses adapting ST-trees as the underlying data structure, achieving O(log n) time per expose(v,w) operation. There is also a demo that shows an easy way to integrate the toptree library and the host application.
OpenTreeMap is software for collaborative, geography-enabled urban tree inventory. The software enables the public, organizations, and governments to collaboratively contribute to an interactive and dynamic map of a community’s tree population. Users can search for trees, add trees to the system, edit existing tree information, or upload tree photos. The system automatically calculates a tree's ecosystem benefits based on its species and diameter. OpenTreeMap can be used in a single municipality or to cover a broader geographic region with many communities, anywhere in the world. This software also exists as a subscription-based system.
HyperList.vim is a Vim plugin for handling HyperLists. HyperList is a methodology to describe anything: any state, item(s), pattern, action, process, transition, program, instruction set, etc. HyperList can be used as an outliner, a TODO-list solution, a project management tool, a business process management aid, a data modeler, a use case facilitator, or for any other application that makes use of descriptions of states or transitions. This plugin does both highlighting and various automatic handling of HyperList, like collapsing lists or parts of lists in a sophisticated way. Since HyperList.vim can also encrypt your lists, it can be used as a very structured password safe.
Canvas Turtle is an object that interprets and renders graphic commands in a Canvas. It provides an API for rendering basic drawing primitives in 2D and includes commands that define the position of the graphics to be rendered, conditionals, loops, and so on. Commands are supplied as text strings with a simple syntax.