Avatar
話を戻してしまうけど、 Joe Groff の↓の Chris Lattner への反論、めちゃくちゃおもしろいこと言ってる気がする。 https://forums.swift.org/t/se-0244-opaque-result-types/21252/69 読み違えなければ、 Rust では existential type を記述するときに( Swift と違って)明示的に dyn キーワードを付けるようにするという決定が下されて、 Swift での過去の議論では同様のキーワードとして any が議論されていた。そして、そうなれば、 any Foo は existential type に、 some Foo は opaque type になると見越している?
Indeed, this is pretty much what opaque types boil down to, is the ability for a function to "output" generic parameters in addition to taking them as inputs. Another way we could conceivably notate this is by putting the output parameters after the ->, as a number of people ...