working on ABC interpreter (ongoing)