Contrastive Code Representation Learning: deep type prediction for TypeScript | Dark Hacker News