跳到主要内容
文章
免费访问

参数性和局部变量

出版:1995年5月1日出版历史
跳过抽象节

摘要

我们建议可以用Strachey的参数(即一致)多态性概念来理解局部状态现象。我们建议的直观基础是以下类比:非局部过程独立于本地声明的变量,就像参数多态函数独立于实例化的类型一样。

J.C.Reynolds首先提出了参数化和表征抽象之间的联系。Reynolds使用逻辑关系在带有类型变量和用户定义类型的语言中形式化了这种联系。我们使用关系参数为类Algol语言构建了一个模型,在该语言中,局部实体和非局部实体之间的交互满足一定的关系标准。关于局部变量的推理本质上涉及到证明多态函数的属性。新模型支持直接验证文献中针对本地变量语义提出的所有测试等效性,并包含关于数据表示的标准推理方法。我们的技术是否产生完全抽象的语义尚不清楚。本文还简要分析了基于自然数部分等价关系的模型。

工具书类

  1. ABRAMSKY,S.和JENSEN,T.P.1991年。高阶多态函数严格性分析的关系方法。在第18届美国计算机学会编程语言原理研讨会会议记录(佛罗里达州奥兰多),美国计算机学会,纽约,第49-54页。]]谷歌学者谷歌学者
  2. AMADIO,R.M.1989年。可实现性结构上的递归。Inf计算。91, 55-85.]]谷歌学者谷歌学者
  3. BARR,M.和WELLS,C.1990年。计算科学的范畴理论。Prentice-Hall International,伦敦。]]谷歌学者谷歌学者
  4. 库克,W.,1991年。面向对象编程与抽象数据类型。《面向对象语言基础》。《计算机科学讲义》,第489卷。施普林格出版社,德国柏林,第151-178页。]]谷歌学者谷歌学者
  5. FREYD,P.J.、MULRY,P.、ROSOLINI,G.和Scorn,D.S.1990年。扩展PER。第五届IEEE计算机科学逻辑年会论文集(宾夕法尼亚州费城)。IEEE Computer Society Press,Los Alamitos,Calif.,第346-354页。]]谷歌学者谷歌学者
  6. FREYD,P.J.、ROBINSON,E.P.和ROSOLINL G.1992a。免费的不饱和性。在计算机科学分类应用按钮中,M.P.Fourman、P.T.Johnstone和A.M.Phts编辑的伦敦数学学会演讲笔记系列,第177卷。剑桥大学出版社,英国剑桥,第107-118页。]]谷歌学者谷歌学者
  7. FREYD,P.J.、ROBINSON,E.P.和ROSOLINI,G.1992b。功能参数。第七届IEEE计算机逻辑研讨会论文集(加州圣克鲁斯)。IEEE Computer Society Press,Los Alamitos,Calif.,第444-452页。]]谷歌学者谷歌学者
  8. GOERDT,A.1985年。由更高类型上的递归定义的函数的Hoare演算。1985年《程序逻辑》。R.Parikh主编,《计算机科学讲义》,第193卷。(纽约布鲁克林),柏林斯普林格·弗拉格出版社,第106-117页。]]谷歌学者谷歌学者
  9. HOARE,C.A.R.1972/1978年。数据表示正确性的证明。法案信息1271-281。(转载于D.Gries编辑的编程方法,IFIP WG2.3的文章集。施普林格·弗拉格,纽约,1978年。)]]谷歌学者谷歌学者
  10. 1995年,HONSELL,F.、MASON,I.、SMITH,S.和TALCOTT,C。一种可变类型的效果逻辑。信息计算。,出现。]]谷歌学者谷歌学者
  11. 海兰德,J.M.E.1988。一个完整的小类别。Ann.纯粹应用。逻辑40135-165。]]谷歌学者谷歌学者
  12. 海兰德·J、罗宾森·E·P和罗索里尼·G·1989。PER模型中的代数类型。1989年编程语义学数学基础会议论文集,计算机科学讲义,第442卷。施普林格·弗拉格,德国柏林,第333-350页。]]谷歌学者谷歌学者
  13. JOHNSTONE,P.T.1989年。仿射范畴和自然马尔切夫范畴。J.Pare申请。A/g.61,251-256.]]谷歌学者谷歌学者
  14. KELLY,G.M.,AND STREET,R.H.1974年。复习2类的基本要素。《分类讨论会:悉尼分类理论讨论会论文集》,1972/1973,《数学讲义》,第420卷,施普林格出版社,柏林,第75-103页。]]谷歌学者谷歌学者
  15. LAMBEK,J.和SCOTT,P.J.,1986年。高阶范畴逻辑导论。剑桥大学出版社,英国剑桥。]]谷歌学者谷歌学者
  16. 劳维,F.W.1989。广义图的某些拓扑之间的定性区别。《计算机科学和逻辑分类》,《当代数学》第92卷,J.W.Gray和A.Scedrov主编,Providence,R.I.,第261-300页。]]谷歌学者谷歌学者
  17. LONGO,G.和MOGGI,E.1991年。构造性自然演绎及其“o-set”解释。数学。结构。计算中。科学。1, 2.]]谷歌学者谷歌学者
  18. MA,Q.和REYNOLDS,J.C.1992年。类型、抽象和参数多态性,第2部分。1991年《程序设计语义学数学基础会议论文集》。计算机科学讲义,第548卷。施普林格·弗拉格,德国柏林,第1-40页。]]谷歌学者谷歌学者
  19. MAC LANE,S.1971年。工作数学的类别。纽约施普林格-弗拉格。]]谷歌学者谷歌学者
  20. MASON,I.A.和TALCOTT,C.L.1992年。参考、局部变量和操作推理。第七届IEEE计算机科学逻辑研讨会论文集(加州圣克鲁斯)。IEEE Computer Society Press,Los Alamitos,Calif.,第186-197页。]]谷歌学者谷歌学者
  21. MEYER,A.R.和SIEBER,K.,1988年。面向局部变量的完全抽象语义:初步报告。在第15届ACM研讨会的会议记录中)。ACM,纽约,第191-203页。]]谷歌学者谷歌学者
  22. MITCHELL,J.C.1986年。表示独立性和数据抽象。在第13届ACM程序语言项目交响曲会议记录中(佛罗里达州圣彼得堡)。ACM公司。纽约,第263-276页。]]谷歌学者谷歌学者
  23. MITCHELL,J.C.1990年。编程语言的类型系统。《理论计算机科学手册》,B卷,第8章,J.van Leeuwen,光盘Elsewer,阿姆斯特丹和麻省理工学院出版社,剑桥。马萨诸塞州,第365-458页。]]谷歌学者谷歌学者
  24. MITCHELL,J.C.和SCEDROV,1993年关于sconing和relator的注释。《计算机科学逻辑》'92,论文选集。《计算机科学讲义》,第702卷。施普林格·弗拉格,纽约,第352-378页。]]谷歌学者谷歌学者
  25. MOGGI,E.1988年。二阶bn-lambda演算的最大相容理论。未发布的注释。]]谷歌学者谷歌学者
  26. NAUR,P.、BACKUS,J.W.、BAUER,F.L.、GREEN,J.、KATZ,C.、MCCARTHY,J.,PERLIS,A.J.、RUTISHAUER,H.、SAMELSON,K.、VAUQUIS,B.、WEGSTEIN,J.H.、VAN WIINGAARDEN,J和WOODGER,M.,1963年。算法语言ALGOL 60的修订报告。社区,ACM 6,1,(1月),1-17。]]谷歌学者谷歌学者
  27. O'HEARN,P.W.和REDDY,《美国1995年》。对象、干涉和Yoneda嵌入。第22届程序语义数学基础会议论文集。《计算机科学电子笔记》,第1卷《Elsewer Science B.V.》即将出版。]]谷歌学者谷歌学者
  28. O'HEARN,P.W.和TTENNET,R.D.1992年。局部变量的语义。在计算机科学的范畴应用中。M.P.Fourman、P.T.Johnstone和A.M.Pitts编辑的《伦敦数学学会讲义系列》,第177卷,剑桥大学出版社,英国剑桥,第217-238页。]]谷歌学者谷歌学者
  29. O'HEARN,P.W.,AND TENNENT,R.D.1993a关系参数和局部变量。第20届ACM编程语言原理研讨会会议记录(南卡罗来纳州查尔斯顿)。ACM,纽约,第171-184页。]]谷歌学者谷歌学者
  30. O'HEARN,P.W.和TENNENT,R.D,1993b。规范逻辑的Semanhcal分析,2。信息公司。107, 1.25-57.]]谷歌学者谷歌学者
  31. OLES,F.J.1982年。编程语言语义的分类理论方法。纽约州锡拉丘兹大学博士论文]]谷歌学者谷歌学者
  32. 奥尔斯,1985年出生。类型代数、函数范畴和块结构。《语义代数方法》,M.Nivat和J.C.Reynolds主编,剑桥大学出版社,英国剑桥,第543-573页。]]谷歌学者谷歌学者
  33. PHOA,W.1990年。有效的域和mtrmslc结构。第五届IEEE计算机科学逻辑年会论文集(宾夕法尼亚州费城)。IEEE Computer Society Press,Los Alamitos,Calif.,第366-377页。]]谷歌学者谷歌学者
  34. PHOA,W.1991年。关于集合理论多态性的两个结果。在范畴理论和计算机科学中。计算机科学课堂讲稿。第530卷。(法国巴黎)。施普林格出版社,柏林,第219-235页。]]谷歌学者谷歌学者
  35. PITTS,A.M.1993年。递归定义域的关系属性。第八届IEEE计算机科学逻辑年会论文集(加拿大蒙特利尔)。IEEE计算机学会出版社,加利福尼亚州洛斯阿拉米托斯,第86-97页。]]谷歌学者谷歌学者
  36. PITTS,A.和STARK.I.1993a。动态创建局部名称的高阶函数的可观察属性,或:What’s new?计算机科学数学基础国际研讨会论文集。计算机科学讲义,第711卷。Springer-Verlag,纽约,第122-141页。]]谷歌学者谷歌学者
  37. PITTS,A.和STARK,I.1993b。关于动态创建局部名称的高阶函数的可观察属性(初步报告)。在ACM SIGPLAN编程语言状态研讨会上。(丹麦哥本哈根,6月12日)。美国计算机学会,纽约,技术报告YALEU/DCS/RR-968,耶鲁大学计算机科学系,康涅狄格州纽黑文,第31-45页。]]谷歌学者谷歌学者
  38. 普洛特金,G.D.1980。完整类型层次结构中的Lambda定义。《To H.B.Cuny:组合逻辑论文、兰姆达微积分和形式主义》,J.P.Seldin和J.R.Hindley主编,学术出版社,佛罗里达州奥兰多,第363-373页。]]谷歌学者谷歌学者
  39. 普洛金。G.D.和ABADI,M.1993年。参数多态性的逻辑。《Lambda计算与应用》,计算机科学讲义,第664卷。施普林格·弗拉格,纽约,第361-375页。]]谷歌学者谷歌学者
  40. 雷迪,《美国》1993年。全局状态被认为是不必要的:无干扰命令式编程的语义。在ACM SIGPLAN编程语言国家研讨会上(丹麦哥本哈根,6月12日)。ACM,纽约,技术报告YALEU/DCS/RR-968,耶鲁大学计算机科学系,康涅狄格州纽黑文,第120-135页。]]谷歌学者谷歌学者
  41. 雷迪,美国,1994年。被动和独立。第九届IEEE计算机科学逻辑年会论文集(法国巴黎)。IEEE Computer Society Press,Los Alamitos,Calif.,第342-352页。]]谷歌学者谷歌学者
  42. 雷迪,《美国》1995年。全局状态认为无干扰命令式程序的基于对象的语义是不必要的。Lisp符号。计算(关于编程语言中状态的特刊),即将出版。]]谷歌学者谷歌学者
  43. REYNOLDS,J.C.1974年。走向类型结构理论。《计算机科学讲义》,第19卷。施普林格出版社,柏林,第408-425页。]]谷歌学者谷歌学者
  44. REYNOLDS,J.C.1978年a。用户定义的类型和过程数据结构是数据抽象的补充方法。在D.Gries编辑的《编程方法》中,IFIP WG 2.3的文章集。施普林格-弗拉格出版社,纽约,1978年,第309-317页。]]谷歌学者谷歌学者
  45. REYNOLDS,J.C.1978年b。干扰的句法控制。第五届ACM编程语言原理研讨会会议记录(亚利桑那州图森)。ACM,纽约,第39-46页。]]谷歌学者谷歌学者
  46. 雷诺兹,J.C.1981a。编程技巧。Prentice-Hall,国际,英国伦敦。]]谷歌学者谷歌学者
  47. 雷诺兹,J.C.1981b。Algol的精髓。《算法语言》,J.W.de Bakker和J.C.van Vliet主编,北霍兰德,阿姆斯特丹,第345-372页。]]谷歌学者谷歌学者
  48. 雷诺兹,J.C.1983。类型、抽象和参数多态性。《信息处理83》(In Information Processing 83),R.E.A.Mason主编,阿姆斯特丹北霍兰德,第513-523页。]]谷歌学者谷歌学者
  49. REYNOLDS,J.C.和PLOTKIN,G.D.1993关于多态型lambda演算中可表示的函子。Inf计算。105, 1-29.]]谷歌学者谷歌学者
  50. 罗宾逊,E.P.1989。PER的完成程度如何?第四届计算机科学逻辑年度研讨会论文集(加利福尼亚州太平洋格罗夫)。IEEE Computer Society Press,Los Alamitos,Calif.,第106-111页。]]谷歌学者谷歌学者
  51. ROBINSON,E.P.和ROSOLINI,G.1994年。自反图和参数多态性。在第九届IEEE计算机科学逻辑年度研讨会论文集(法国巴黎)。IEEE Computer Society Press,Los Alamltos,Califor.]]谷歌学者谷歌学者
  52. SCHMIDT,D.A.1985年。检测指称规范中的全局变量。ACM事务处理。掠夺。语言系统。7, 299-310.]]谷歌学者谷歌学者
  53. 锡伯,K.1992。通过逻辑关系推理顺序函数。在计算机科学范畴的应用中,M.P.Fourman、P.T.Johnstone和A.M.Pitts主编,伦敦数学学会讲座笔记系列,第177卷。剑桥大学出版社,英国剑桥,第258-269页。]]谷歌学者谷歌学者
  54. SIEBER,K.1993年。实现局部变量完全抽象的新步骤。在ACM SIGPLAN编程语言状态研讨会上(丹麦哥本哈根,6月12日)。ACM,纽约,技术报告YALEU/DCS/RR-968,耶鲁大学计算机科学系,康涅狄格州纽黑文。,第88-100页。]]谷歌学者谷歌学者
  55. 锡伯,K,1994年。类Algol语言二阶子集的完全抽象(初步报告)。1994年1月1日,萨尔兰德大学技术学院谷歌学者谷歌学者
  56. 斯特拉奇,C.1967年。程序设计语言的基本概念。哥本哈根国际计算机编程暑期学校未发表的课堂讲稿。]]谷歌学者谷歌学者
  57. TENNENT,R.D.1989年。类Algol语言中的基本数据结构。科学。计算。掠夺。13, 73-110.]]谷歌学者谷歌学者
  58. TENNENT,R.D.1990年。规范逻辑的语义分析。Inf计算。85, 2, 135-162.]]谷歌学者谷歌学者
  59. TENNENT,R.D.1991年。编程语言的语义。Prentice-Hall International,英国伦敦。]]谷歌学者谷歌学者
  60. 阿德勒,P.1989。免费的定理!函数编程语言与计算机体系结构;第四届国际研讨会(英国伦敦帝国学院)。ACM,纽约,第347-359页。]]谷歌学者谷歌学者

索引术语

  1. 参数性和局部变量

      建议

      评论

      安·凯利·索贝尔

      提出了一种用于局部变量语义推理的关系参数模型。该模型基于这样的观察:非局部过程独立于局部声明的变量,就像参数多态函数独立于实例化的类型一样。非局部过程只能使用访问该变量的参数访问局部变量,这类似于程序仅通过提供的抽象类型操作访问抽象类型表示的能力。该指称模型基于函数范畴语义,能够处理局部状态的表示依赖性。本文首先对模型进行了“无类别”描述,然后详细论证了函子映射保留了支持自然变换的关系结构(由自反图定义)。这种语义模型的弱点源于暂时的副作用以及它无法处理完整的抽象。

      访问计算机文献的关键评论在这里

      成为评论员计算评论。

      评论

      登录选项

      检查您是否可以通过登录凭据或您的机构访问本文。

      登录

      完全访问权限

      • 发布于

        封面图片美国医学会杂志
        美国医学会杂志 第42卷第3期
        1995年5月
        167页
        国际标准编号:0004-5411
        EISSN公司:1557-735倍
        内政部:10.1145/210346
        期刊目录

        版权所有©1995 ACM

        出版商

        计算机协会

        美国纽约州纽约市

        出版历史

        • 出版:1995年5月1日
        发布于雅克第42卷第3期

        权限

        请求有关此文章的权限。

        请求权限

        检查更新

        限定符

        • 文章

      PDF格式

      以PDF文件查看或下载。

      PDF格式

      电子阅读器

      使用eReader联机查看。

      电子阅读器