タグ

2021年7月26日のブックマーク (2件)

  • Type Sets Proposalを読む(2)

    はじめに Type Sets Proposalとは何か interface/constraintに対して制限を追加する EBNFによる表現 なぜこのように制限するのか 具体例 unionsを標準形に変形する 標準形のunionsを1つにまとめる メソッドのインライン化 最終形 ある型が型制約を満たすかどうかの判定 ある型制約が別な型制約に含まれるかどうかの判定 この制限がないとどうなるか 最後に はじめに この記事は、https://github.com/golang/go/issues/45346 に加えられた修正内容とその意味について説明するもので、Goの"Type Sets" Proposalを読むの続編です。前編を読んでいない方は先に読んでからこの記事を読んだ方がわかりやすいと思います。 前提となる知識は次のようなものです。 Go言語についての初歩的な知識と実装経験(A Tour

    Type Sets Proposalを読む(2)
    todesking
    todesking 2021/07/26
  • Go の "Type Sets" proposal を読む

    Intro 読者の想定知識 この記事で出てくるGo言語仕様用語 サマリー Context Type Parameters Proposalの要点 Type listの必要性 暗黙的な"underlying type matching"の問題 type listからsum typeへ underlying type matchingと代入可能性 underlying type matchingと型switchステイトメント underlying type matchingの表現力の限界 Type Sets Proposal Type sets(型集合) 型Tがinterface ITを実装するための条件 要素を埋め込んだインタフェースのtype set interface elements(インタフェース要素) 任意の型(インタフェース型に限らない) approximation elemen

    Go の "Type Sets" proposal を読む
    todesking
    todesking 2021/07/26