首页 > 最新文献

Proceedings. 1990 International Conference on Computer Languages最新文献

英文 中文
Parallelism in object-oriented programming languages 面向对象编程语言中的并行性
Pub Date : 1990-03-12 DOI: 10.1109/ICCL.1990.63783
Antonio Corradi, L. Leonardi
Parallelism in object-oriented systems is discussed. The most appealing way to insert parallelism in an object framework is to associate execution capacity with objects. This approach introduces active objects. Synchronous and asynchronous communication between active objects are described using examples of existing languages. A second dimension of parallelism comes from accommodating several activities within the same object. The synchronization techniques for the internal activities are described. The presented examples are written in a highly parallel language, called Parallel Objects. A distinctive characteristic of PO is the possibility of inheritance for the specification of concurrency internal to objects.<>
讨论了面向对象系统中的并行性。在对象框架中插入并行性的最吸引人的方法是将执行能力与对象相关联。这种方法引入了活动对象。使用现有语言的示例描述活动对象之间的同步和异步通信。并行性的第二个维度来自于在同一个对象中容纳多个活动。描述了内部活动的同步技术。所提供的示例是用一种称为并行对象的高度并行语言编写的。PO的一个显著特征是对象内部并发性规范的继承可能性
{"title":"Parallelism in object-oriented programming languages","authors":"Antonio Corradi, L. Leonardi","doi":"10.1109/ICCL.1990.63783","DOIUrl":"https://doi.org/10.1109/ICCL.1990.63783","url":null,"abstract":"Parallelism in object-oriented systems is discussed. The most appealing way to insert parallelism in an object framework is to associate execution capacity with objects. This approach introduces active objects. Synchronous and asynchronous communication between active objects are described using examples of existing languages. A second dimension of parallelism comes from accommodating several activities within the same object. The synchronization techniques for the internal activities are described. The presented examples are written in a highly parallel language, called Parallel Objects. A distinctive characteristic of PO is the possibility of inheritance for the specification of concurrency internal to objects.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"52 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126978329","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}
引用次数: 29
Coordination languages for open system design 开放系统设计的协调语言
Pub Date : 1990-03-12 DOI: 10.1109/ICCL.1990.63781
P. Ciancarini
Three coordination languages, Linda, Flat Concurrent Prolog, and DeltaProlog, are discussed with respect to their features for open system design. It is interesting to compare the Linda coordination model with the model of logic languages, because both involve forms of communication based on pattern matching. Although they seem to be equivalent with respect to their expressive power, current implementations of Flat Concurrent Prolog and DeltaProlog miss the efficiency of Linda, for reasons that are discussed. Shared Prolog, a new parallel logic language that is closer to the Linda coordination model, is introduced.<>
本文讨论了Linda、Flat Concurrent Prolog和DeltaProlog这三种协调语言在开放系统设计中的特点。将Linda协调模型与逻辑语言模型进行比较是很有趣的,因为两者都涉及基于模式匹配的通信形式。尽管它们在表达能力方面似乎是等价的,但是当前的Flat Concurrent Prolog和DeltaProlog的实现缺少Linda的效率,原因将在后面讨论。本文介绍了一种更接近Linda协调模型的新型并行逻辑语言——共享Prolog
{"title":"Coordination languages for open system design","authors":"P. Ciancarini","doi":"10.1109/ICCL.1990.63781","DOIUrl":"https://doi.org/10.1109/ICCL.1990.63781","url":null,"abstract":"Three coordination languages, Linda, Flat Concurrent Prolog, and DeltaProlog, are discussed with respect to their features for open system design. It is interesting to compare the Linda coordination model with the model of logic languages, because both involve forms of communication based on pattern matching. Although they seem to be equivalent with respect to their expressive power, current implementations of Flat Concurrent Prolog and DeltaProlog miss the efficiency of Linda, for reasons that are discussed. Shared Prolog, a new parallel logic language that is closer to the Linda coordination model, is introduced.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"55 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116216591","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}
引用次数: 30
Data-oriented exception handling in Ada Ada中面向数据的异常处理
Pub Date : 1990-03-12 DOI: 10.1109/ICCL.1990.63765
Qian Cui, J. Gannon
A set of language features that can be added to Ada that associate exceptions with the operations of a data type and exception handlers with data objects are presented. The notation is called data-oriented exception exception handling to distinguish it from more conventional, control-oriented mechanisms. The implementation of a preprocessor from the notation to Ada is described. Empirical studies indicate that control-oriented exception handling mechanisms are more complex than necessary for the tasks they perform, and that data-oriented exception handling can be used to produce programs that are smaller, better structured, and easier to understand and modify.<>
介绍了一组可以添加到Ada的语言特性,这些特性将异常与数据类型的操作关联起来,并将异常处理程序与数据对象关联起来。这种标记称为面向数据的异常异常处理,以区别于更传统的面向控制的机制。描述了从符号到Ada的预处理器的实现。经验研究表明,面向控制的异常处理机制比它们执行的任务所需的复杂得多,而面向数据的异常处理可以用来生成更小、结构更好、更容易理解和修改的程序。
{"title":"Data-oriented exception handling in Ada","authors":"Qian Cui, J. Gannon","doi":"10.1109/ICCL.1990.63765","DOIUrl":"https://doi.org/10.1109/ICCL.1990.63765","url":null,"abstract":"A set of language features that can be added to Ada that associate exceptions with the operations of a data type and exception handlers with data objects are presented. The notation is called data-oriented exception exception handling to distinguish it from more conventional, control-oriented mechanisms. The implementation of a preprocessor from the notation to Ada is described. Empirical studies indicate that control-oriented exception handling mechanisms are more complex than necessary for the tasks they perform, and that data-oriented exception handling can be used to produce programs that are smaller, better structured, and easier to understand and modify.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129745754","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}
引用次数: 4
Incremental global optimization for faster recompilations 增量全局优化以实现更快的重新编译
Pub Date : 1990-03-12 DOI: 10.1109/ICCL.1990.63784
L. Pollock, M. Soffa
Although modular programming with separate compilation aids in eliminating unnecessary recompilation and reoptimization, recent studies have discovered that more efficient code can be generated by collapsing a modular program through procedure inlining. To avoid having to reoptimize the resultant large procedures, techniques for incrementally incorporating changes into globally optimized code are presented. The algorithm determines which optimizations are no longer safe after a program change, and also discovers which new optimizations can be performed in order to maintain a high level of optimization. An intermediate representation is incrementally updated to reflect the current optimizations in the program. The techniques developed in this paper have been exploited to improve on the current techniques for symbolic debugging of optimized code.<>
尽管使用单独编译的模块化编程有助于消除不必要的重新编译和重新优化,但最近的研究发现,通过过程内联折叠模块化程序可以生成更高效的代码。为了避免不得不重新优化生成的大型过程,提出了将更改增量地合并到全局优化代码中的技术。该算法确定在程序更改后哪些优化不再安全,并且还发现可以执行哪些新的优化以保持高水平的优化。一个中间表示被增量更新以反映程序中的当前优化。本文开发的技术已被用于改进现有的优化代码的符号调试技术。
{"title":"Incremental global optimization for faster recompilations","authors":"L. Pollock, M. Soffa","doi":"10.1109/ICCL.1990.63784","DOIUrl":"https://doi.org/10.1109/ICCL.1990.63784","url":null,"abstract":"Although modular programming with separate compilation aids in eliminating unnecessary recompilation and reoptimization, recent studies have discovered that more efficient code can be generated by collapsing a modular program through procedure inlining. To avoid having to reoptimize the resultant large procedures, techniques for incrementally incorporating changes into globally optimized code are presented. The algorithm determines which optimizations are no longer safe after a program change, and also discovers which new optimizations can be performed in order to maintain a high level of optimization. An intermediate representation is incrementally updated to reflect the current optimizations in the program. The techniques developed in this paper have been exploited to improve on the current techniques for symbolic debugging of optimized code.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122486764","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
A self-applicable partial evaluator for the lambda calculus 一个自适用的部分求值器的λ演算
Pub Date : 1990-03-12 DOI: 10.1145/128861.128864
N. Jones, C. K. Gomard, Anders Bondorf, O. Danvy, Torben Æ. Mogensen
A description is given of theoretical and a few practical aspects of an implemented self-applicable partial evaluator for the call by value untyped lambda calculus with constants, conditionals, and a fixed point operator. A partial evaluator that is both high-order and self-applicable is also described. A solution to the problem of binding time analysis is presented. The partial evaluator is simple, completely automatic, and implemented in a side-effect free subset of Scheme. It has been used to compile, to generate compilers, and to generate a compiler generator.<>
给出了一个已实现的具有常量、条件和不动点运算符的按值调用的自适用部分求值器的理论和几个实际方面的描述。还描述了一个高阶且自适用的部分求值器。提出了约束时间分析问题的一种解决方法。部分求值器很简单,完全自动化,并且在Scheme的一个无副作用的子集中实现。它已被用于编译、生成编译器和生成编译器生成器。
{"title":"A self-applicable partial evaluator for the lambda calculus","authors":"N. Jones, C. K. Gomard, Anders Bondorf, O. Danvy, Torben Æ. Mogensen","doi":"10.1145/128861.128864","DOIUrl":"https://doi.org/10.1145/128861.128864","url":null,"abstract":"A description is given of theoretical and a few practical aspects of an implemented self-applicable partial evaluator for the call by value untyped lambda calculus with constants, conditionals, and a fixed point operator. A partial evaluator that is both high-order and self-applicable is also described. A solution to the problem of binding time analysis is presented. The partial evaluator is simple, completely automatic, and implemented in a side-effect free subset of Scheme. It has been used to compile, to generate compilers, and to generate a compiler generator.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122520612","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}
引用次数: 94
An object model for shared data 共享数据的对象模型
Pub Date : 1990-03-12 DOI: 10.1109/ICCL.1990.63769
G. Kaiser, B. Hailpern
The classical object model supports private data within objects and clean interfaces among objects, and, by definition, does not permit sharing of data among arbitrary objects. This is a problem for certain real-world applications, where the same data logically belongs to multiple objects and may be distributed over multiple nodes on the network. Rather than give up the advantages of encapsulated objects in modeling real-world entities, a new object model that supports distribution of computation units from information-hiding concerns is proposed. A new object model is introduced, a motivating example from the financial services domain is described, and a new language based on the model is presented.<>
经典对象模型支持对象内部的私有数据和对象之间的干净接口,并且根据定义,不允许在任意对象之间共享数据。对于某些实际应用程序来说,这是一个问题,在这些应用程序中,相同的数据在逻辑上属于多个对象,并且可能分布在网络上的多个节点上。在不放弃封装对象建模现实世界实体的优点的基础上,提出了一种新的对象模型,该模型支持从信息隐藏关注点出发的计算单元分布。引入了一种新的对象模型,描述了一个来自金融服务领域的激励示例,并提出了一种基于该模型的新语言。
{"title":"An object model for shared data","authors":"G. Kaiser, B. Hailpern","doi":"10.1109/ICCL.1990.63769","DOIUrl":"https://doi.org/10.1109/ICCL.1990.63769","url":null,"abstract":"The classical object model supports private data within objects and clean interfaces among objects, and, by definition, does not permit sharing of data among arbitrary objects. This is a problem for certain real-world applications, where the same data logically belongs to multiple objects and may be distributed over multiple nodes on the network. Rather than give up the advantages of encapsulated objects in modeling real-world entities, a new object model that supports distribution of computation units from information-hiding concerns is proposed. A new object model is introduced, a motivating example from the financial services domain is described, and a new language based on the model is presented.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"238 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116350282","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}
引用次数: 8
Coercion as a metaphor for computation 强制作为计算的隐喻
Pub Date : 1990-03-12 DOI: 10.1109/ICCL.1990.63767
S. Jagannathan
Consideration is given to a generalization of coercion that permits structured transformations between program and data structures. The nature of these coercions goes significantly beyond what is found in most modern programming languages. The intent is to develop a programming model that permits the expression of a wide range of superficially diverse modularity constructs within a simple and unified framework. The design of this model is based on the observation that a variety of program structures found in modern programming languages are represented fundamentally in terms of an environment. Given suitable transformations that map the environment representation of a program structure into a data object, it is possible to enable the programmer to gain explicit control over the naming environment. An investigation is made of the semantics of program/data coercion in the presence of a non-strict parallel evaluation semantics for environments. Parallelism and program/data coercion form an interesting symbiosis and it is the investigation of this interaction that forms the primary focus of this work.<>
考虑到强制转换的泛化,它允许程序和数据结构之间的结构化转换。这些强制值的性质远远超出了大多数现代编程语言。其目的是开发一种编程模型,该模型允许在一个简单而统一的框架内表达广泛的表面上不同的模块化构造。这个模型的设计是基于这样一种观察,即现代编程语言中的各种程序结构基本上都是根据环境来表示的。给定适当的转换,将程序结构的环境表示映射到数据对象,就有可能使程序员获得对命名环境的显式控制。研究了在环境中存在非严格并行计算语义的情况下程序/数据强制转换的语义。并行性和程序/数据强制形成了一种有趣的共生关系,正是对这种相互作用的研究形成了这项工作的主要焦点。
{"title":"Coercion as a metaphor for computation","authors":"S. Jagannathan","doi":"10.1109/ICCL.1990.63767","DOIUrl":"https://doi.org/10.1109/ICCL.1990.63767","url":null,"abstract":"Consideration is given to a generalization of coercion that permits structured transformations between program and data structures. The nature of these coercions goes significantly beyond what is found in most modern programming languages. The intent is to develop a programming model that permits the expression of a wide range of superficially diverse modularity constructs within a simple and unified framework. The design of this model is based on the observation that a variety of program structures found in modern programming languages are represented fundamentally in terms of an environment. Given suitable transformations that map the environment representation of a program structure into a data object, it is possible to enable the programmer to gain explicit control over the naming environment. An investigation is made of the semantics of program/data coercion in the presence of a non-strict parallel evaluation semantics for environments. Parallelism and program/data coercion form an interesting symbiosis and it is the investigation of this interaction that forms the primary focus of this work.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127076761","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}
引用次数: 1
Compiling SIMD programs for MIMD architectures 为MIMD架构编译SIMD程序
Pub Date : 1990-03-12 DOI: 10.1109/ICCL.1990.63785
M. J. Quinn, P. Hatcher
A summary of the advantages of data parallel languages a subclass of SIMD (single-instruction-stream, multiple-data-stream languages) is presented, and it is shown how programs written in a data parallel language can be compiled into loosely-synchronous MIMD (multiple-instruction-stream, multiple-data-stream) programs suitable for efficient execution on multicomputers. It is shown that the compiler must first locate the points at which message passing is required. These points are identical to the synchronization points. Therefore, message passing-primitives also synchronize the processors. Second, the compiler must transform the control structure of the input program to bring message-passing primitives to the outermost level. In order to allow a single physical processor to emulate a number of processing elements, the compiler must insert FOR loops around the blocks of code that are delimited by the calls to the message-passing primitives. Finally, data flow analysis can be used to eliminate some calls on message-passing routines and to combine multiple shorter messages into single, longer message whenever possible.<>
摘要总结了SIMD(单指令流、多数据流语言)的子类数据并行语言的优点,并展示了如何将用数据并行语言编写的程序编译成适合在多台计算机上高效执行的松同步MIMD(多指令流、多数据流)程序。它表明编译器必须首先定位需要传递消息的点。这些点与同步点是相同的。因此,消息传递原语也同步处理器。其次,编译器必须转换输入程序的控制结构,将消息传递原语带到最外层。为了允许单个物理处理器模拟多个处理元素,编译器必须在由对消息传递原语的调用所划分的代码块周围插入FOR循环。最后,数据流分析可用于消除对消息传递例程的一些调用,并尽可能将多个较短的消息合并为单个较长的消息。
{"title":"Compiling SIMD programs for MIMD architectures","authors":"M. J. Quinn, P. Hatcher","doi":"10.1109/ICCL.1990.63785","DOIUrl":"https://doi.org/10.1109/ICCL.1990.63785","url":null,"abstract":"A summary of the advantages of data parallel languages a subclass of SIMD (single-instruction-stream, multiple-data-stream languages) is presented, and it is shown how programs written in a data parallel language can be compiled into loosely-synchronous MIMD (multiple-instruction-stream, multiple-data-stream) programs suitable for efficient execution on multicomputers. It is shown that the compiler must first locate the points at which message passing is required. These points are identical to the synchronization points. Therefore, message passing-primitives also synchronize the processors. Second, the compiler must transform the control structure of the input program to bring message-passing primitives to the outermost level. In order to allow a single physical processor to emulate a number of processing elements, the compiler must insert FOR loops around the blocks of code that are delimited by the calls to the message-passing primitives. Finally, data flow analysis can be used to eliminate some calls on message-passing routines and to combine multiple shorter messages into single, longer message whenever possible.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131841851","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}
引用次数: 13
GVL: a graphical, functional language for the specification of output in programming languages GVL:一种图形化的函数式语言,用于规范程序设计语言的输出
Pub Date : 1990-03-12 DOI: 10.1109/ICCL.1990.63756
J. Cordy, T.C.N. Graham
The conceptual view model of output is based on the complete separation of the output specification of a program from the program itself, and the use of implicit synchronization to allow the data state of the program to be continuously mapped to a display view. An output specification language called GVL is used to specify the mapping from the program's data state to the display. GVL is a functional language explicitly designed for specifying output. Building from a small number of basic primitives, it provides sufficient power to describe complex graphical output. Examples, including GVL specifications for linked list diagrams, bar charts and an address card file, are given. In keeping with its intended application, GVL is also a graphical language, in which the user draws output specifications directly on the display. How problems often associated with imperative graphical languages are avoided by using the functional paradigm is shown. A prototype implementation of GVL was used to produce examples of graphical output.<>
输出的概念视图模型基于程序的输出规范与程序本身的完全分离,并使用隐式同步来允许将程序的数据状态连续映射到显示视图。一种称为GVL的输出规范语言用于指定从程序的数据状态到显示的映射。GVL是一种明确设计用于指定输出的函数式语言。它由少量基本原语构建而成,为描述复杂的图形输出提供了足够的能力。示例,包括GVL规范的链表图,条形图和地址卡文件,给出了。为了与其预期的应用保持一致,GVL也是一种图形语言,用户可以直接在显示器上绘制输出规格。说明了如何通过使用函数式范式来避免与命令式图形语言相关的问题。使用GVL的原型实现生成图形输出示例。
{"title":"GVL: a graphical, functional language for the specification of output in programming languages","authors":"J. Cordy, T.C.N. Graham","doi":"10.1109/ICCL.1990.63756","DOIUrl":"https://doi.org/10.1109/ICCL.1990.63756","url":null,"abstract":"The conceptual view model of output is based on the complete separation of the output specification of a program from the program itself, and the use of implicit synchronization to allow the data state of the program to be continuously mapped to a display view. An output specification language called GVL is used to specify the mapping from the program's data state to the display. GVL is a functional language explicitly designed for specifying output. Building from a small number of basic primitives, it provides sufficient power to describe complex graphical output. Examples, including GVL specifications for linked list diagrams, bar charts and an address card file, are given. In keeping with its intended application, GVL is also a graphical language, in which the user draws output specifications directly on the display. How problems often associated with imperative graphical languages are avoided by using the functional paradigm is shown. A prototype implementation of GVL was used to produce examples of graphical output.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"151 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116401606","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}
引用次数: 13
FLAME: a language for distributed programming FLAME:一种分布式编程语言
Pub Date : 1990-03-12 DOI: 10.1109/ICCL.1990.63762
F. D. Paoli, M. Jazayeri
FLAME is an experimental language for distributed programming. It is intended for applications that run on a collection of computers connected by a network. It is part of a project that deals with the building of open software systems. Open systems place stringent requirements on both the type of language one uses and the style of programming. FLAME tries to address the difficulties of writing such open, distributed applications with current technology. FLAME is based on C++, and its main contribution is to integrate the notions of objects and process groups at the programming language level. The result is a powerful language which, nevertheless, raises several new questions. The current state of FLAME is discussed, and potential areas for future development are outlined.<>
FLAME是一种实验性的分布式编程语言。它适用于在通过网络连接的计算机集合上运行的应用程序。它是构建开放软件系统项目的一部分。开放系统对所使用的语言类型和编程风格都提出了严格的要求。FLAME试图解决用当前技术编写这种开放的分布式应用程序的困难。FLAME基于c++,它的主要贡献是在编程语言级别集成了对象和进程组的概念。其结果是一种强大的语言,然而,它提出了几个新问题。讨论了FLAME的现状,并概述了未来发展的潜在领域。
{"title":"FLAME: a language for distributed programming","authors":"F. D. Paoli, M. Jazayeri","doi":"10.1109/ICCL.1990.63762","DOIUrl":"https://doi.org/10.1109/ICCL.1990.63762","url":null,"abstract":"FLAME is an experimental language for distributed programming. It is intended for applications that run on a collection of computers connected by a network. It is part of a project that deals with the building of open software systems. Open systems place stringent requirements on both the type of language one uses and the style of programming. FLAME tries to address the difficulties of writing such open, distributed applications with current technology. FLAME is based on C++, and its main contribution is to integrate the notions of objects and process groups at the programming language level. The result is a powerful language which, nevertheless, raises several new questions. The current state of FLAME is discussed, and potential areas for future development are outlined.<<ETX>>","PeriodicalId":317186,"journal":{"name":"Proceedings. 1990 International Conference on Computer Languages","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1990-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117062431","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}
引用次数: 7
期刊
Proceedings. 1990 International Conference on Computer Languages
全部 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