Because I wanted to understand skip lists.
var assert = require('assert');
var Skiplist = require('skiplist');
var list = new Skiplist();
list.insert('cat', 'Cats are the best animal.');
list.insert('dog', 'Dogs are obviously inferior.');
list.insert('coati', 'Coatis have long tails.');
var value = list.match('cat');
assert(value === 'Cats are the best animal.');
var result = list.find('co');
assert(result.length === 2);
assert(result[0][0] === 'coati');
assert(result[1][0] === 'dog');
var wasRemoved = list.remove('dog');
assert(list.length() === 2);