带有 UnpinCell 的生成器

主要观点:7 月提出通过将固定操作更全面融入语言来使其更符合人体工程学,上周用UnpinCell概念进一步发展该想法,此概念可解决生成器面临的最大问题即Iterator接口不允许自引用值。通过添加Generator特质等方式来解决相关问题,但存在一致性和反向桥接等问题。
关键信息:

  • 7 月提出固定操作改进方式及上周相关发展。
  • UnpinCell在解决生成器问题中的作用。
  • GeneratorIntoGenerator特质的定义及相关实现。
  • 解决从迭代器到生成器桥接的方法及for循环的改变。
    重要细节:
  • 最大优势是引入对象永不移动的契约且向后兼容,现存特质需新接口才能加入该契约。
  • 存在一致性问题,如两个IntoGenerator实现重叠,可通过扩展不稳定负向实现特性等方式解决。
  • 有反向桥接问题,处理生成器作为迭代器时需固定,对于Unpin生成器处理方式不同,需特定包装类型,旧接口可向后兼容升级为接受IntoGenerator。总体而言,用户影响相对较小,应注重语言用户体验的渐进式改进。
阅读 15
0 条评论