首页 > 最新文献

SIGPLAN Conferences and Workshops最新文献

英文 中文
Decentralised control flow - based on UNIX 基于UNIX的分散控制流
Pub Date : 1983-06-01 DOI: 10.1145/800226.806866
Isabel Gouveia Lima, Richard P. Hopkins, Lindsay F. Marshall, D. Mundy, P. Treleaven
In the computing science community there is a growing belief that the traditional von Neumann programming model will be superceded in the 1990's by a new decentralised programming model. Various “revolutionary” approaches are being promoted: data flow, reduction, actor and logic models. We propose an alternative “evolutionary” approach, namely a decentralised control flow model. This model, a generalisation of the von Neumann model, can already be recognised as providing the basis of modern operating systems such as UNIX. In this paper we discuss initially the programming of future decentralised computing systems that represent a convergence of computer networks and parallel architectures. Next we describe the decentralised control flow model, and finally we present a simple programming language called BASIX that embodies the model.
在计算机科学界,越来越多的人相信,传统的冯·诺伊曼编程模型将在20世纪90年代被一种新的分散编程模型所取代。各种“革命性”的方法正在被推广:数据流、约简、参与者和逻辑模型。我们提出了另一种“进化”方法,即分散控制流模型。这个模型是冯·诺伊曼模型的概括,已经被认为是现代操作系统(如UNIX)的基础。在本文中,我们初步讨论了未来分散计算系统的编程,它代表了计算机网络和并行体系结构的融合。接下来,我们描述了分散控制流模型,最后我们提出了一个简单的编程语言BASIX,它体现了该模型。
{"title":"Decentralised control flow - based on UNIX","authors":"Isabel Gouveia Lima, Richard P. Hopkins, Lindsay F. Marshall, D. Mundy, P. Treleaven","doi":"10.1145/800226.806866","DOIUrl":"https://doi.org/10.1145/800226.806866","url":null,"abstract":"In the computing science community there is a growing belief that the traditional von Neumann programming model will be superceded in the 1990's by a new decentralised programming model. Various “revolutionary” approaches are being promoted: data flow, reduction, actor and logic models. We propose an alternative “evolutionary” approach, namely a decentralised control flow model. This model, a generalisation of the von Neumann model, can already be recognised as providing the basis of modern operating systems such as UNIX. In this paper we discuss initially the programming of future decentralised computing systems that represent a convergence of computer networks and parallel architectures. Next we describe the decentralised control flow model, and finally we present a simple programming language called BASIX that embodies the model.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124037833","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Organizing software in a distributed environment 在分布式环境中组织软件
Pub Date : 1983-06-01 DOI: 10.1145/800226.806846
B. Lampson, E. Schmidt
The System Modeller provides automatic support for several different kinds of program development cycle in the Cedar programming system. It handles the daily evolution of a single module or a small group of modules modified by a single person, the assembly of numerous modules into a large system with complex interconnections, and the formal release of a system. The Modeller can also efficiently locate a large number of modules in a big distributed file system, and move them from one machine to another to meet operational requirements or improve performance.
System modeler为Cedar编程系统中的几种不同类型的程序开发周期提供了自动支持。它处理单个模块或由一个人修改的一小组模块的日常演变,将众多模块组装成具有复杂互连的大系统,以及系统的正式发布。modeler还可以高效地定位大型分布式文件系统中的大量模块,并将它们从一台机器移动到另一台机器,以满足操作需求或提高性能。
{"title":"Organizing software in a distributed environment","authors":"B. Lampson, E. Schmidt","doi":"10.1145/800226.806846","DOIUrl":"https://doi.org/10.1145/800226.806846","url":null,"abstract":"The System Modeller provides automatic support for several different kinds of program development cycle in the Cedar programming system. It handles the daily evolution of a single module or a small group of modules modified by a single person, the assembly of numerous modules into a large system with complex interconnections, and the formal release of a system. The Modeller can also efficiently locate a large number of modules in a big distributed file system, and move them from one machine to another to meet operational requirements or improve performance.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130859847","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 81
Attribute grammars and data-flow languages 属性语法和数据流语言
Pub Date : 1983-06-01 DOI: 10.1145/800226.806849
Rodney Farrow
This paper examines the similarity between attribute grammars and data-flow languages. For any attribute grammar there is a data-flow program that is an evaluator for it, and we describe how to build this data-flow program. The design of semantic functions for an attribute grammar is seen to be a problem of programming in a data-flow language. Reinterpreting our experience writing attribute grammars, we suggest some techniques to use in data-flow programming and propose language features that will support them. We also propose using data-flow notation to specify the semantic functions of attribute grammars and implementing attribute evaluators in a data-flow language.
本文考察了属性语法与数据流语言之间的相似性。对于任何属性语法,都有一个作为它的求值器的数据流程序,我们将描述如何构建这个数据流程序。属性语法的语义函数的设计被看作是用数据流语言编程的一个问题。重新解释我们编写属性语法的经验,我们建议在数据流编程中使用一些技术,并提出支持这些技术的语言特性。我们还建议使用数据流符号来指定属性语法的语义功能,并在数据流语言中实现属性求值器。
{"title":"Attribute grammars and data-flow languages","authors":"Rodney Farrow","doi":"10.1145/800226.806849","DOIUrl":"https://doi.org/10.1145/800226.806849","url":null,"abstract":"This paper examines the similarity between attribute grammars and data-flow languages. For any attribute grammar there is a data-flow program that is an evaluator for it, and we describe how to build this data-flow program. The design of semantic functions for an attribute grammar is seen to be a problem of programming in a data-flow language. Reinterpreting our experience writing attribute grammars, we suggest some techniques to use in data-flow programming and propose language features that will support them. We also propose using data-flow notation to specify the semantic functions of attribute grammars and implementing attribute evaluators in a data-flow language.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"30 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115769406","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 15
An analysis of language models for high-performance communication in local-area networks 局域网中高性能通信的语言模型分析
Pub Date : 1983-06-01 DOI: 10.1145/800226.806852
T. LeBlanc, R. Cook
In this paper we present an empirical analysis of language models for communication in distributed systems. We consider a computing environment in which a high-level, distributed programming language kernel is sufficient support for high-performance programming applications. We propose programming language support for such an environment and present the performance results of an implementation. Using the distributed programming language StarMod as a context, we describe language constructs for message-based communication (including broadcast), remote invocation, and remote memory references. Each form of communication is integrated into StarMod in a consistent fashion maintaining the properties of transparency, modularity, and full parameter functionality. The costs and benefits associated with the various models of communication are analyzed based on the results of an implementation which runs on 8 PDP 11/23; microprocessors connected by a 1 megabit/second network.
本文对分布式系统中用于通信的语言模型进行了实证分析。我们考虑一个计算环境,在这个环境中,高级分布式编程语言内核足以支持高性能编程应用程序。我们提出了支持这种环境的编程语言,并给出了实现的性能结果。使用分布式编程语言StarMod作为上下文,我们描述了用于基于消息的通信(包括广播)、远程调用和远程内存引用的语言结构。每种形式的通信都以一致的方式集成到StarMod中,保持透明、模块化和全参数功能的属性。根据在8 PDP 11/23上运行的执行结果,分析了与各种通信模式相关的成本和收益;微处理器通过每秒1兆比特的网络连接。
{"title":"An analysis of language models for high-performance communication in local-area networks","authors":"T. LeBlanc, R. Cook","doi":"10.1145/800226.806852","DOIUrl":"https://doi.org/10.1145/800226.806852","url":null,"abstract":"In this paper we present an empirical analysis of language models for communication in distributed systems. We consider a computing environment in which a high-level, distributed programming language kernel is sufficient support for high-performance programming applications. We propose programming language support for such an environment and present the performance results of an implementation.\u0000 Using the distributed programming language StarMod as a context, we describe language constructs for message-based communication (including broadcast), remote invocation, and remote memory references. Each form of communication is integrated into StarMod in a consistent fashion maintaining the properties of transparency, modularity, and full parameter functionality. The costs and benefits associated with the various models of communication are analyzed based on the results of an implementation which runs on 8 PDP 11/23; microprocessors connected by a 1 megabit/second network.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128649306","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 18
Specification and implementation of resilient, atomic data types 弹性原子数据类型的规范和实现
Pub Date : 1983-06-01 DOI: 10.1145/800226.806851
W. Weihl, B. Liskov
A major issue in many applications is how to preserve the consistency of data in the presence of concurrency and hardware failures. We suggest addressing this problem by implementing applications in terms of abstract data types with two properties: Their objects are atomic (they provide serializability and recoverability for activities using them) and resilient (they survive hardware failures with acceptably high probability). We define what it means for abstract data types to be atomic and resilient. We also discuss issues that arise in implementing such types, and describe a particular linguistic mechanism provided in the Argus programming language.
许多应用程序中的一个主要问题是如何在并发性和硬件故障的情况下保持数据的一致性。我们建议通过使用具有两个属性的抽象数据类型来实现应用程序来解决这个问题:它们的对象是原子的(它们为使用它们的活动提供序列化性和可恢复性)和弹性的(它们以可接受的高概率在硬件故障中幸存下来)。我们定义了抽象数据类型原子性和弹性的含义。我们还讨论了在实现此类类型时出现的问题,并描述了Argus编程语言中提供的特定语言机制。
{"title":"Specification and implementation of resilient, atomic data types","authors":"W. Weihl, B. Liskov","doi":"10.1145/800226.806851","DOIUrl":"https://doi.org/10.1145/800226.806851","url":null,"abstract":"A major issue in many applications is how to preserve the consistency of data in the presence of concurrency and hardware failures. We suggest addressing this problem by implementing applications in terms of abstract data types with two properties: Their objects are atomic (they provide serializability and recoverability for activities using them) and resilient (they survive hardware failures with acceptably high probability). We define what it means for abstract data types to be atomic and resilient. We also discuss issues that arise in implementing such types, and describe a particular linguistic mechanism provided in the Argus programming language.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"131 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127032498","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 40
Fable: A programming-language solution to IC process automation problems 一个解决集成电路过程自动化问题的编程语言
Pub Date : 1983-06-01 DOI: 10.1145/800226.806859
H. Ossher, B. Reid
The Stanford University Center for Integrated Systems is embarking on an ambitious project to formally characterize integrated circuit fabrication processes, and to provide a degree of automation of research and prototyping activities in the IC fabrication facility. A crucial component of this project is the ability to represent an IC fabrication “recipe” in a repeatable, transportable, device-independent fashion. We have designed the language Fable for this purpose: it offers some novel approaches to abstraction and modularity. We describe the problem, explain why we were forced to devise a new language rather than use an existing language, describe important properties of the Fable language, and give several examples.
斯坦福大学集成系统中心正在着手一项雄心勃勃的项目,正式描述集成电路制造过程,并在集成电路制造设施中提供一定程度的自动化研究和原型活动。该项目的一个关键组成部分是能够以可重复、可移动、与设备无关的方式表示IC制造“配方”。我们为此目的设计了语言Fable:它提供了一些新颖的抽象和模块化方法。我们描述了这个问题,解释了为什么我们被迫设计一种新语言而不是使用现有的语言,描述了Fable语言的重要特性,并给出了几个例子。
{"title":"Fable: A programming-language solution to IC process automation problems","authors":"H. Ossher, B. Reid","doi":"10.1145/800226.806859","DOIUrl":"https://doi.org/10.1145/800226.806859","url":null,"abstract":"The Stanford University Center for Integrated Systems is embarking on an ambitious project to formally characterize integrated circuit fabrication processes, and to provide a degree of automation of research and prototyping activities in the IC fabrication facility. A crucial component of this project is the ability to represent an IC fabrication “recipe” in a repeatable, transportable, device-independent fashion. We have designed the language Fable for this purpose: it offers some novel approaches to abstraction and modularity. We describe the problem, explain why we were forced to devise a new language rather than use an existing language, describe important properties of the Fable language, and give several examples.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123777866","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 18
A programmer controlled approach to data and control abstraction 一种程序员控制的数据和控制抽象方法
Pub Date : 1983-06-01 DOI: 10.1145/800226.806850
J. Heinänen
Traditionally, data abstraction languages have only provided a means to extend the language “upward” to include new procedures and data types not present in the base language. This paper introduces a complementary approach, which also allows programmers to extend the language “downward” and thus to override many of the previously preempted decisions concerning the nature and implementation of various language constructs. In order to illustrate the approach, several extension examples are presented that involve control of decisions below the level of Pascal-like languages. Implementation of the programmer defined language constructs is also discussed and benchmark results are reported that show them comparable—and in many cases exceeding—in efficiency the corresponding built-in constructs of conventional languages.
传统上,数据抽象语言只提供了一种“向上”扩展语言的方法,以包含基础语言中没有的新过程和数据类型。本文介绍了一种补充方法,它还允许程序员“向下”扩展语言,从而覆盖许多先前关于各种语言结构的性质和实现的预先决定。为了说明这种方法,本文提供了几个扩展示例,这些示例涉及到类似pascal语言级别以下的决策控制。还讨论了程序员定义的语言结构的实现,并报告了基准测试结果,表明它们在效率上与传统语言的相应内置结构相当,在许多情况下甚至超过了它们。
{"title":"A programmer controlled approach to data and control abstraction","authors":"J. Heinänen","doi":"10.1145/800226.806850","DOIUrl":"https://doi.org/10.1145/800226.806850","url":null,"abstract":"Traditionally, data abstraction languages have only provided a means to extend the language “upward” to include new procedures and data types not present in the base language. This paper introduces a complementary approach, which also allows programmers to extend the language “downward” and thus to override many of the previously preempted decisions concerning the nature and implementation of various language constructs. In order to illustrate the approach, several extension examples are presented that involve control of decisions below the level of Pascal-like languages. Implementation of the programmer defined language constructs is also discussed and benchmark results are reported that show them comparable—and in many cases exceeding—in efficiency the corresponding built-in constructs of conventional languages.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123229887","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Action and transaction skeletons: : High level language constructs for database transactions 操作和事务框架:用于数据库事务的高级语言结构
Pub Date : 1983-06-01 DOI: 10.1145/872728.806855
D. Ridjanovic, Michael L. Brodie
The relational data model (RDM) provides a powerful basis for high level language constructs that are used in representing structural (static) and behavioural (dynamic) properties of data intensive applications. A fundamental class of semantic integrity constraints, called interrelational constraints, cannot adequately be represented by structural or behavioural constructs alone. The required structural concept is provided directly by the RDM, but a complementary behavioural concept must be added. The language design issues concern a behavioural concept, called an action skeleton, and its integration with the structural concept. An action skeleton enforces a disciplined design and implementation of database transactions that maintain interrelational constraints. Another design issue concerns the use of syntax to constrain design and implementation choices.
关系数据模型(RDM)为用于表示数据密集型应用程序的结构(静态)和行为(动态)属性的高级语言构造提供了强大的基础。语义完整性约束的一个基本类别,称为相互关系约束,不能仅由结构或行为构造充分表示。RDM直接提供了所需的结构概念,但必须添加一个补充性的行为概念。语言设计问题涉及行为概念,称为动作骨架,以及它与结构概念的整合。操作框架强制对维护相互关系约束的数据库事务进行严格的设计和实现。另一个设计问题涉及使用语法来约束设计和实现选择。
{"title":"Action and transaction skeletons: : High level language constructs for database transactions","authors":"D. Ridjanovic, Michael L. Brodie","doi":"10.1145/872728.806855","DOIUrl":"https://doi.org/10.1145/872728.806855","url":null,"abstract":"The relational data model (RDM) provides a powerful basis for high level language constructs that are used in representing structural (static) and behavioural (dynamic) properties of data intensive applications. A fundamental class of semantic integrity constraints, called interrelational constraints, cannot adequately be represented by structural or behavioural constructs alone. The required structural concept is provided directly by the RDM, but a complementary behavioural concept must be added. The language design issues concern a behavioural concept, called an action skeleton, and its integration with the structural concept. An action skeleton enforces a disciplined design and implementation of database transactions that maintain interrelational constraints. Another design issue concerns the use of syntax to constrain design and implementation choices.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130627878","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Compiling functional languages for von Neumann machines 编译函数语言的冯诺依曼机器
Pub Date : 1983-06-01 DOI: 10.1145/800226.806848
U. Honschopp, W. Lippe, F. Simon
Functional programming languages based on the lambda calculus provide a powerful programming tool. Much of this power derives from the ability to use higher order functions, that means functions having either functional arguments or a functional result. However, attempts to implement such higher order functions without any restrictions have always been expensive, both in storage and time (e.g. [Bo/We]). ALGOL-like languages only have functions with functional arguments (e.g. ALGOL 60 or, with some mode restrictions, PASCAL) and a run time stack can be used for managing function and procedure calls. Using Dijkstra's “display-technique” we can obtain a simple and efficient implementation.
基于lambda演算的函数式编程语言提供了一种强大的编程工具。这种能力很大程度上来源于使用高阶函数的能力,这意味着函数要么具有函数式参数,要么具有函数式结果。然而,在没有任何限制的情况下实现这种高阶函数的尝试总是非常昂贵的,无论是在存储还是时间上(例如[Bo/We])。类ALGOL语言只有带函数参数的函数(例如ALGOL 60,或者有一些模式限制的PASCAL),运行时堆栈可用于管理函数和过程调用。使用Dijkstra的“显示技术”,我们可以获得一个简单而有效的实现。
{"title":"Compiling functional languages for von Neumann machines","authors":"U. Honschopp, W. Lippe, F. Simon","doi":"10.1145/800226.806848","DOIUrl":"https://doi.org/10.1145/800226.806848","url":null,"abstract":"Functional programming languages based on the lambda calculus provide a powerful programming tool. Much of this power derives from the ability to use higher order functions, that means functions having either functional arguments or a functional result. However, attempts to implement such higher order functions without any restrictions have always been expensive, both in storage and time (e.g. [Bo/We]).\u0000 ALGOL-like languages only have functions with functional arguments (e.g. ALGOL 60 or, with some mode restrictions, PASCAL) and a run time stack can be used for managing function and procedure calls. Using Dijkstra's “display-technique” we can obtain a simple and efficient implementation.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122254560","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
A high-level programming and command language 一种高级编程和命令语言
Pub Date : 1983-06-01 DOI: 10.1145/800226.806868
C. Fraser, D. R. Hanson
Unifying programming and command languages is a promising idea that has yet to be thoroughly exploited. Most attempts at such unification have used Lisp or traditional languages, such as Pascal. This paper describes the command and programming language EZ, which attempts to unify command and programming languages by using high-level string-processing concepts, such as those in SNOBOL4 and Icon. EZ has particularly simple data abstractions that attempt to bridge the gap between the data abstractions of command languages and those of programming languages. This is accomplished by type fusion, which pushes the differences between some classes of types, such as strings and text files, out of the language and into the implementation. The language, its use, and its implementation are described.
统一编程语言和命令语言是一个很有前途的想法,但尚未得到充分利用。大多数这种统一的尝试都使用了Lisp或传统语言,如Pascal。本文描述了命令和编程语言EZ,它试图通过使用高级字符串处理概念(如SNOBOL4和Icon中的字符串处理概念)来统一命令和编程语言。EZ具有特别简单的数据抽象,试图弥合命令语言和编程语言之间的数据抽象差距。这是通过类型融合实现的,它将某些类型类(如字符串和文本文件)之间的差异从语言中推到实现中。描述了该语言、它的用法和它的实现。
{"title":"A high-level programming and command language","authors":"C. Fraser, D. R. Hanson","doi":"10.1145/800226.806868","DOIUrl":"https://doi.org/10.1145/800226.806868","url":null,"abstract":"Unifying programming and command languages is a promising idea that has yet to be thoroughly exploited. Most attempts at such unification have used Lisp or traditional languages, such as Pascal. This paper describes the command and programming language EZ, which attempts to unify command and programming languages by using high-level string-processing concepts, such as those in SNOBOL4 and Icon. EZ has particularly simple data abstractions that attempt to bridge the gap between the data abstractions of command languages and those of programming languages. This is accomplished by type fusion, which pushes the differences between some classes of types, such as strings and text files, out of the language and into the implementation. The language, its use, and its implementation are described.","PeriodicalId":414056,"journal":{"name":"SIGPLAN Conferences and Workshops","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1983-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115186755","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
期刊
SIGPLAN Conferences and Workshops
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1