期刊文献+

程序语言中的共归纳数据类型及其应用 被引量:11

Coinductive Data Types and their Applications in Programming Languages
下载PDF
导出
摘要 归纳数据类型利用代数方法从构造的角度归纳地描述数据类型的有限语法结构,但在描述动态行为方面存在一定的不足。作为归纳数据类型的范畴对偶概念,共归纳数据类型利用共代数方法从观察的角度共归纳地描述了数据类型的动态行为。首先,从范畴论和代数的角度给出程序语言中的归纳数据类型定义,并分析了相应的递归操作;接着,利用共代数给出共归纳数据类型的范畴论定义,并根据共归纳数据类型的终结性分析了相应的共递归操作;最后,指出如何利用λ-双代数及分配律将归纳与共归纳数据类型有机地融合起来,探讨数据类型的语法构造与动态行为关系。 Inductive data types mainly focus on the finite syntactic structures inductively in terms of algebras from the construction perspective,but have some disadvantages in describing dynamic behaviors.As their categorical dual notions,coinductive data types aim to coinductively describe the observable behaviors of data types in terms of coalgebras from the observation perspective.We firstly gave the definitions of inductive data types in programming languages from the categorical and algebraic viewpoints.After that,we continued to present the definition of coinductive data types with coalgebras and analyze the corresponding corecursion operations according to the finality of coinductive data types.Finally,we pointed out how to use λ-bialgebras and distributive laws to combine inductive and coinductive data types and discuss the relations between syntactic constructions and dynamic behaviors of data types.
出处 《计算机科学》 CSCD 北大核心 2011年第11期114-118,共5页 Computer Science
基金 2010年高校博士点科研基金-新教师类(20100172120043) 华南理工大学中央高校基本科研业务费专项资金(2009ZM0158)资助
关键词 归纳数据类型 共归纳数据类型 范畴论 代数 共代数 双代数 Inductive data type Coinductive data type Category theory Algebras Coalgebras Bialgebras
  • 相关文献

参考文献25

  • 1Bird R. Introduction to Functional Programming using Haskell ( 2nd Edition) [M]. Prentice-Hall, UK, 1998.
  • 2Meijer E, Fokkinga M, Paterson R. Functional Program ming with Bananas, Lenses, Envelopes and Barbed Wire[M]. Hughes J, ed. Functional Programming Languages and Compu-ter Ar chitecture, number 523 in Lect. Notes Comp. Sci., Berlin: Springer, 1991 : 215-240.
  • 3Bird R S, Moor O D. Algebra of Programming [M]. Prentice HalI,UK, 1997.
  • 4Gibbons J. Lecture Notes on Algebraic and Coalgebraie Methods for Calculating Functional Programs[M]. Summer School on Algebraic and Coalgebraic Methods in the Mathematics of Program Construction, Oxford, UK, 2000.
  • 5Greiner J. Programming with Inductive and Co-inductive Types [R]. CMU-CS-92-109. School of Comp. Sci., Carnegie-Mellon Univ. , Pittsburgh, 1992.
  • 6Hensel U, Jacobs B. Coalgebraic Theories of Sequences in PVS[J]. Journal of Logic and Computation, 1999.
  • 7Kieburtz R B. Codata and Comonads in Haskell[Z]. unpublished manuscript, 1999.
  • 8Hinze R. Reasoning about Codata [J]. Lecture Notes in Compu ter Science, 2010,6299 : 42-93.
  • 9Jacobs B. Introduction to Coalgebra: Towards Matbe matics of States and Observations. Book Drah[OL]. http://www. cs. ru. nl/-bart, 2005.
  • 10Hutton G. Fold and Unfold for Program Semantics[C]//Proc. 3rd. ACM SIGH.AN International Conference on Functional Programming. ACM, 1998.

同被引文献138

  • 1庞建民,赵荣彩,王怀民.Haskell语言的高阶特性及其应用[J].计算机科学,2005,32(6):167-168. 被引量:8
  • 2庞建民,赵荣彩,王倩.Haskell语言的惰性计算特性及其应用[J].计算机工程与应用,2006,42(10):97-99. 被引量:4
  • 3张迎周,张卫丰.Haskell:一种现代纯函数式语言[J].南京邮电大学学报(自然科学版),2007,27(4):13-18. 被引量:7
  • 4Meijer E, Fokkinga M, Paterson R. Functional programming with bananas, lenses, envelopes and barbed wire I-G] // Hughes J, ed. LNCS523: Functional Programming Languages and Computer Architecture. Berlin: Springer, 1991:215-240.
  • 5Malcolm G. Algebraic types and program transformation I-D]. The Netherlands: University of Groningen, 1990.
  • 6Bird R. Introduction to Functional Programming Using Haskell [M]. 2nd ed. Englewood Cliffs, NJ: Prentice-Hall, 1998.
  • 7Bird R, Moor O D. Algebra of Programming I-M]. Englewood Cliffs, NJ Prentice Hall, 1997.
  • 8Hensel U, Jacobs B. Coalgebraic theories of sequences in PVS[J]. Journal of Logic and Computation, 1999, 9(4): 463-500.
  • 9Hinze R. Reasoning about codata [G] //LNCS 6299 Central European Functional Programming School (CEFP 2009 ). Berlin: Springer, 2010:42-93.
  • 10Pattinson D. An introduction to the theory of coalgebras [EBIOL]. [2011-06-13]. http,//www, doe. ic. ac. ukldirk/ Publications/.

引证文献11

二级引证文献16

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部