> On Jun 23, 2017, at 7:46 AM, Elviro Rocca via swift-evolution > <swift-evolution@swift.org> wrote: > > It's probably late to just casually add a couple of cents to a discussion > that has been going for so long, but it seems to me that from a user > standpoint, that uses types to structure their programs and define logic and > relationships, isomorphic types should be considered the same by the > compiler. The added burden of distinguishing between, to say, a function that > takes 2 arguments and one that takes a single tuple of two arguments doesn't > seem useful at all, at least from the standpoint of the types involves. All > the rest, like named parameters or tuple labels, are just really about style > and convenience, but isomorphic types, while not strictly equal (the very > concept of "equal" is in fact a huge deal in abstract mathematics) are for > all means "equivalent" for the world-modeler.
Doesn’t seem useful?… let myFunc: (MyTypeAlias) -> Int = /* … */ Does the function pointer have a single parameter? Or does it trigger Super-Secret Tuple-Destructing mode and actually indicate two parameters? My secret unknown single type should always be a single type, no matter what kind of type it is. — Daryle Walker Mac, Internet, and Video Game Junkie darylew AT mac DOT com
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution