保存此搜索
柿子:具有可扩展变异类型的嵌套家族多态性 许多障碍阻碍了模块化、可扩展的代码。 一些语言结构(如模式匹配)不容易扩展。 在存在扩展类型的情况下,继承的代码可能不是类型安全的。 建立设计模式的负担。。。 资格认证系统F <: :一些条款和条件可能适用 类型限定符提供了一种轻量级机制,用于丰富现有的类型系统,以强制执行其他所需的程序不变量。 他们通过提供一种有限但有效的分型形式来做到这一点。 虽然类型限定符的理论很好。。。 结构参数多态的参数分型 我们研究了结构子类型与参数多态性和递归定义类型构造函数的相互作用。 尽管在这种情况下,结构子类型是不可确定的,但我们描述了类型构造函数的参数化概念,然后。。。 当子类型约束释放时:一种新的一类多态性类型推断方法 在系统F中存在一级或“非提示性”二级多态性的类型推断是几十年来一个活跃的研究领域,最初的工作可追溯到80年代末。 然而,到目前为止,许多基本问题。。。 动态语言的多态类型推理 我们提出了一个类型系统,该系统以可控的方式将一阶多态性与交集类型、并集类型和子类型相结合,并证明了其安全性。 然后我们定义了一个类型重建算法,即声音和终止。 这将产生。。。 -
TASTyTruffle:参数多态性的实时专业化 参数多态性使程序员能够独立于其操作的值类型来表达算法。用于实现参数多态性的方法可能具有重要的性能影响。 一种流行的方法。。。 研究论文 2023年10月 作为参数多态性的结构子类型 结构分型和参数多态性为程序员提供了类似的灵活性和可重用性。 例如,这两个功能都使程序员能够为期望窄记录的函数提供更宽记录作为参数。 然而。。。 研究论文 2023年10月 相互等渗子类型 等递归类型通常被视为许多编程语言中存在的类型递归的类型理论模型,例如面向对象语言中的类或函数语言中的代数数据类型。 他们相对于马的主要优势。。。 通过未嵌入进行嵌入 嵌入是一种语言开发技术,它将目标语言实现为宿主语言中的库。 这种方法有很多优点,包括轻量级和继承宿主语言特性的能力。 一个值得注意的。。。 参数化代数协议 我们提出了代数协议,该协议能够定义协议模板和会话类型,类似于使用代数数据类型定义域特定类型。 参数化代数协议包含所有常规协议以及大多数。。。 通过Lambda集专业化实现更好的故障化 高阶函数对静态程序分析和优化编译器都提出了挑战。 为了简化具有高阶函数的语言的分析和编译 之前的工作提出了多种 ... 通用go to go:字典传递、单态化和混合 Go是一种流行的静态类型的工业编程语言。 为了帮助代码的类型安全重用,2022年初发布的最新Go版本(Go 1.18)通过泛型类型包括有界参数多态性。 Go 1.18使用…实现泛型类型。。。 MLstruct:结构类型布尔代数中的主类型推理 交集和并集类型日益流行,已成为TypeScript和Scala 3等编程语言的主流。 然而,到目前为止,还没有一种语言能够将这些强大的类型与主要的多态类型结合起来。。。 研究论文 2022年10月 通配符需要证人保护 在本文中,我们证明了Amin和Tate(2016)在Java通配符中发现的不健全是可以避免的,即使没有nullness-aware类型系统。 本文的关键见解是,隐式类型系统的稳健性。。。 效果处理程序的第一类名称 代数效果和处理程序是一种很有前途的技术,可以将可组合的计算效果集成到函数式编程语言中。 效果处理程序允许使用不同的效果进行简洁的编程,但它们不提供方便的方式。。。 研究论文 2022年8月 FreezeML中基于约束的类型推理 FreezeML是一种新的一级多态类型推断方法,它使用术语注释来控制多态类型的实例化和泛化时间和方式。 它保守地扩展了Hindley-Milner型推断,并首次提出。。。 有限帧重用的参考计数 最近引入的Perceus_算法可以自动插入引用计数指令,从而使生成的(无循环)程序无垃圾:对象在不能再被引用的时刻被释放。 一个重要的。。。 对数和程序测试 最近,基于属性的随机测试得到了很多关注,但大多数框架在多态属性方面做得不够。 尽管伯纳德 等。 已经发展出一种理论,将广泛的多态性降低为单态性,它。。。 研究论文 2021年8月 调用值隐式多态性的仿射CPS变换 将程序转换为continuation-passing样式(CPS)揭示了continuation的概念,支持许多应用程序,如编译器中的控制操作符和中间表示。 虽然类型保存使CPS转换。。。 效果处理程序的通用证据传递:将效果处理程序高效编译到C 本文研究代数效果处理程序的编译技术。 特别地,我们提出了一系列对代数效应的细化,通过多提示定界控制、广义证据传递、收益冒泡,最后是一个。。。