data structures implemented using ruby