checkin original coco/r f# port (not my code)
improvements to coco/r f# to make it work in the modern world