Would TypeTags solve this problem?