摘要
补充材料
可供下载
M.Abadi、L.Cardelli、B.Pierce和G.Plotkin。 静态类型语言中的动态类型。 POPL'98:编程语言原理,第237-268页,1989年。 谷歌学者 数字图书馆 M.Abadi、L.Cardelli、B.Pierce和D.Rémy。 多态语言中的动态类型。 函数编程杂志,5:111-1301995。 谷歌学者 交叉引用 T.Altenkirch和B.Reuse。 使用广义归纳类型的Lambda术语的单数表示。 J.Flum和M.Rodriguez-Artalejo,编辑,《CSL’99:计算机科学逻辑》,第453-468页,1999年。 谷歌学者 数字图书馆 A.I.Baars和S.D.Swierstra。 键入动态键入。 ICFP'02:函数编程国际会议,第157-166页,2002年。 谷歌学者 数字图书馆 E.Brady、C.McBride和J.McKinna。 归纳家庭不需要存储他们的指数。 在TYPES’03:证明和程序的类型中,第115–129页。 斯普林格,2004年。 谷歌学者 C.Casinghino、V.Sjöberg和S.Weirich。 用独立类型的语言组合证明和程序。 《POPL’14:编程语言原理》,第33-45页,2014年。 谷歌学者 数字图书馆 M.M.T.Chakravarty、G.Keller和S.Peyton Jones。 关联的类型同义词。 2005年《POPL'05:编程语言原理》,第241-253页。 谷歌学者 数字图书馆 M.M.T.Chakravarty、G.Keller、S.Lee、T.L.McDonell和V.Grover。 使用多核GPU加速Haskell阵列代码。 2011年《DAMP’11:多核编程的声明性方面》,第3-14页。 谷歌学者 数字图书馆 J.Cheney和R.Hinze。 一流的幻影类型。 技术报告,康奈尔大学,2003年。 谷歌学者 P.E.Dagand和C.McBride。 在装饰品之间传递功能。 《ICFP’12:函数式编程国际会议》,第103–114页,2012年。 谷歌学者 数字图书馆 C.V.Hall、K.Hammond、S.Peyton Jones和P.L.Wadler。 在Haskell中键入类。 《TOPLAS’96:编程语言与系统学报》,18(2):109–1381996年3月。 谷歌学者 数字图书馆 H.-S.Ko和J.Gibbons。 关系代数装饰品。 在《DTP’13:依赖型编程》中,第37-48页,2013年。 谷歌学者 数字图书馆 X.Leroy和M.Mauny。 《功能编程语言与计算机体系结构》,第406–426页,1991年。 谷歌学者 数字图书馆 C.麦克布莱德。 类型保留重命名和替换。 函数编程杂志,2006年。 谷歌学者 C.麦克布莱德。 装饰代数,代数装饰。 《函数编程杂志》即将出版。 谷歌学者 T.L.McDonell、M.M.T.Chakravarty、G.Keller和B.Lippmeier。 优化纯功能GPU程序。 2013年《ICFP’13:函数式编程国际会议》,第49–60页。 谷歌学者 数字图书馆 T.L.McDonell、M.M.T.Chakravarty、V.Grover和R.R.Newton。 类型安全运行时代码生成:加速到LLVM。 Haskell研讨会,第201–212页,2015年。 谷歌学者 数字图书馆 X.Ou、G.Tan、Y.Mandelbaum和D.Walker。 具有依赖类型的动态类型(扩展抽象)。 在TCS’04:国际理论计算机科学会议,第437-450页,2004年8月。 谷歌学者 J.Peterson和M.Jones。 实现类型类。 《PLDI’93:编程语言设计与实现》,第227-236页,1993年6月。 谷歌学者 数字图书馆 T.Schrijvers、S.Peyton Jones、M.M.T.Chakravarty和M.Sulzmann。 使用开放式函数进行类型检查。 在ICFP'08:函数式编程国际会议,第51-62页,2008年。 谷歌学者 数字图书馆 T.Schrijvers、S.Peyton Jones、M.Sulzmann和D.Vytiniotis。 GADT的完整和可判定类型推断。 ICFP'09:函数编程国际会议,第341-352页,2009年。 谷歌学者 数字图书馆 T.Sheard和S.Peyton Jones。 Haskell的模板元编程。 哈斯克尔研讨会,第1-16页,2002年。 谷歌学者 数字图书馆 M.Shields、T.Sheard和S.Peyton Jones。 动态类型作为阶段类型推理。 《POPL'98:编程语言原理》,第289-302页,1998年。 谷歌学者 数字图书馆 V.Simonet和F.Pottier。 保护代数数据类型的基于约束的方法。 TOPLAS'07:编程语言与系统学报,29(1):2007年1月。 谷歌学者 数字图书馆 Z.Somogyi、F.J.Henderson和T.C.Conway。 Mercury是一种高效的纯声明性逻辑编程语言。 澳大利亚计算机科学通信,17:499–5121995。 谷歌学者 D.Syme、K.Battocchi、K.Takeda、D.Malayeri和T.Petricek。 互联网规模数据源的信息丰富功能编程主题。 《DDFP’13:数据驱动函数编程》,第1-4页,2013年。 谷歌学者 数字图书馆 D.Vytiniotis、S.Peyton Jones和J.P.Magalhães。 等式证明和延迟类型错误:编译珍珠。 《ICFP’12:函数编程国际会议》,第341-352页,2012年。 谷歌学者 数字图书馆 T.Williams、P.-E.Dagand和D.Rémy。 装饰在实践中。 2014年第15–24页,第14工作组:通用编程研讨会。 谷歌学者 数字图书馆
建议
Ghostbuster:简化和转换GADT的工具 2016年ICFP 广义代数数据类型,或简称GADT,可以对构造函数类型中的非平凡属性进行编码。 然而,一旦这些属性被编码到数据类型中,所有操作该数据类型的代码都必须提供证据证明它维护了这些属性。。。 共享子类型:递归参数化代数数据类型的子类型 哈斯克尔08 Haskell中的newtype声明引入了一个新类型,用于重命名现有类型。 程序员将这两种类型视为语义不同,但共享相同的运行时表示。 当两个语义视图上的操作一致时。。。 共享子类型:递归参数化代数数据类型的子类型 Haskell'08:关于Haskell的第一届ACM SIGPLAN研讨会会议记录 Haskell中的newtype声明引入了一个新类型,用于重命名现有类型。 程序员将这两种类型视为语义不同,但共享相同的运行时表示。 当两个语义视图上的操作一致时。。。