How to Implement Recursive data type - Modular