Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

an R-tree implementation in OCaml

branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 src
Octocat-spinner-32 test
Octocat-spinner-32 .gitignore
Octocat-spinner-32 AUTHORS.txt
Octocat-spinner-32 INSTALL.txt
Octocat-spinner-32 Makefile
Octocat-spinner-32 README.txt
Octocat-spinner-32 _oasis
Octocat-spinner-32 _tags
Octocat-spinner-32 configure

An R-tree implementation for OCaml

This implements a simple R-tree library according to Guttman's original paper. Currently node splitting is done through the quadratic algorithm in that paper.

The interface (and implementation) is purely functional.

A functor interface is also provided for providing implicit bounds for values.

The standard interface is:

type 'a t

val empty : 'a t
val insert : 'a t -> 'a -> Envelope.t -> 'a t
val find : 'a t -> Envelope.t -> 'a list
val size : 'a t -> int

and Envelope.t is simply float * float * float * float

To compile, run tests & install, simply:

$ make
$ make install

The only external depency is oUnit for running unit tests.

Something went wrong with that request. Please try again.