Mar 7, 2022
Is there a reason you chose to use & for product types? Both TypeScript (https://www.typescriptlang.org/docs/handbook/unions-and-intersections.html) and Scala 3 (https://dotty.epfl.ch/docs/reference/new-types/intersection-types.html) use that notation for intersection types, which are a very different thing. I feel like most people represent a product type with a symbol that looks like multiplication. So Int x String or Int * String, not Int & String.