共查询到20条相似文献,搜索用时 15 毫秒
1.
SINA is an object-oriented language for distributed and concurrent programming. The primary focus of this paper is on the object-oriented concurrent programming mechanisms of SINA and their implementation. This paper presents the SINA constructs for concurrent programming and inter-object communication, some illustrative examples and a message-based implementation model for SINA that we have used in our current implementation. 相似文献
2.
Advances in robotics has led to the cooperation of multiple robots among themselves and with their industrial automation environment. Efficient interaction with industrial robots thus becomes one of the key factors in the successful utilization of this modern equipment. When multiple manipulators have to be coordinated, there is a need for a new programming approach that facilitates and encompasses the needs of concurrency, synchronization, timing, and communication. Most robot languages have been developed with little attention being given to the integration of the robot with its environment. Currently, there is a gap between the robot capabilities, the task definition environment, and language facilities supplied to use robots.This paper analyzes the needs and then establishes that a concurrent logic programming approach is a step towards achieving a multi-robot knowledgeable task programming. In particular, the FCP dialect of concurrent Prolog is demonstrated, and analyzed.This research is partially supported by the Paul Ivanier Center for research in robots and production management. 相似文献
3.
Support for generic programming consists of three essential ingredients: support for overloaded functions, a run-time type representation, and a generic view on data. Different approaches to datatype-generic programming occupy different points in this design space. In this article, we revisit the “Scrap your boilerplate” approach and identify its location within the three-dimensional design space. The characteristic features of “Scrap your boilerplate” are its two generic views, the ‘spine’ view for consuming and transforming data, and the ‘type-spine’ view for producing data. We show how to combine these views with different overloading mechanisms and type representations. 相似文献
4.
Cooper R.C.B. Hamilton K.G. 《IEEE transactions on pattern analysis and machine intelligence》1988,14(2):258-263
Recent programming languages have attempted to provide support for concurrency and for modular programming based on abstract interfaces. Building on experience of adding monitors to CLU, a language oriented towards data abstraction, it is explained how these two goals conflict. In particular, the clash between conventional views on interface abstraction and the programming style required for avoiding monitor deadlock is discussed. It is argued that the best compromise between these goals is a combination of a fine-grain locking mechanism together with a method for explicitly defining concurrency properties for selected interfaces 相似文献
5.
6.
7.
CCNPASCAL is a language derived from Pascal and Concurrent Pascal which has been used in the development of an operating system for a multiprocessor. This paper introduces some of the important features of the language and illustrates them with examples. The language provides mechanisms for interfacing separately compiled modules, for building abstractions of collections of resources and for efficient asynchronous communication. 相似文献
8.
9.
Goedel语言是一种说明性逻辑程序设计语言。该语言基于一阶逻辑,引入了一个多态多类的类型系统和多种新的语言成分,支持抽象数据类型和模块化程序设计等技术,语言本身也具有很强的说明性语义。详细介绍了Goedel语言的类型系统及其构造,对在逻辑程序设计语言中引入类型系统的作用进行了一些深入的分析和讨论。 相似文献
10.
11.
建构主义教学模式下的支架式教学是讲授计算机程序设计语言课程的恰当方法,它强调把复杂的任务加以分解,把学习者的理解逐步引向深入,由学习者主动完成信息的建构。在教学实践中应用搭脚手架、创造情境、独立探索、协作学习、效果评价等手段,使支架式教学落实到教学各个环节,教学效果良好,呈现出良好的应用前景。 相似文献
12.
Prolog(Programming in Logic)程序语言是一种逻辑程序设计语言.它是在逻辑学理论基础上建立起来的并广泛应用在人工智能研究中.这几十年已经出现了各具特色的Prolog编译器,而且各种编译器也都很成功.虽然在现阶段已经出现了各种版本Prolog编译器,但是Prolog编译器的发展空间还是很大.本文先通过现代Prolog编译器的不足,介绍了新Prolog编译器的特点,然后简单叙述了Prolog编译器词法分析和语法分析的过程,最后介绍了UCB策略. 相似文献
13.
针对常用文本处理工具、方法中无法有效地对上下文无关语法描述的源代码进行结构查询、匹配这一问题,提出基于TXL语言语法编程功能的解决方法。 TXL是一种语言转换和快速原型构建系统,其核心是TXL编程语言。利用其强大的语法编程功能,可以轻松实现对任意可以用上下文无关语法描述的语言进行解析变换,实现特定结构的匹配、检索与转换功能。介绍TXL语言基本概念及使用方法,结合日常工作经验介绍其在文本处理、编程语言处理与转换等方面的应用。实践证明,TXL编程能有效解决传统文本处理工具在词法标记、语法解析及代码转换上的实现代价,实现高效率的源码文本处理功能。 相似文献
14.
Generic programming is an effective methodology for developing reusable software libraries. Many programming languages provide generics and have features for describing interfaces, but none completely support the idioms used in generic programming. To address this need we developed the language G. The central feature of G is the concept, a mechanism for organizing constraints on generics that is inspired by the needs of modern C++ libraries. G provides modular type checking and separate compilation (even of generics). These characteristics support modular software development, especially the smooth integration of independently developed components. In this article we present the rationale for the design of G and demonstrate the expressiveness of G with two case studies: porting the Standard Template Library and the Boost Graph Library from C++ to G. The design of G shares much in common with the concept extension proposed for the next C++ Standard (the authors participated in its design) but there are important differences described in this article. 相似文献
15.
16.
Concurrent Constraint Programming (CCP) has been used over the last two decades as an elegant and expressive model for concurrent systems. It models systems of agents communicating by posting and querying partial information, represented as constraints over the variables of the system. This covers a vast variety of systems as those arising in biological phenomena, reactive systems, net-centric computing and the advent of social networks and cloud computing. In this paper we survey the main applications, developments and current trends of CCP. 相似文献
17.
介绍了结对编程的概念,阐述了其作为学习编程技能的一种过程改进策略在国外计算机专业教学中的实验效果,并论述了相关影响因素。 相似文献
18.
Thomas Plum 《Software》1977,7(2):215-221
Fooling the user' of a programming language by ‘natural’ constructions can cause completely unpredictable reliability defects in software systems. Numerous examples show the extent of the problem. Two methods of overcoming it are presented: simple languages devoid of user-fooling powers, and explication languages to accompany the more powerful languages. 相似文献
19.
Summary A. N. Habermann recently published some Critical comments on the programming language Pascal. His reproaches are principally that numerous constructs are ill-defined, that there is confusion amongst ranges, types and structures, and that the goto statement should have been abolished. The present reply successively deals with points that are clearly refutable, those which are debatable and those which constitute valid criticism. Its principal aim is to encourage the reader to form his own opinion. 相似文献
20.
M.P. Papazoglou P.I. Georgiadis D.G. Maritsas 《Computer Languages, Systems and Structures》1984,9(2):107-131
Simulation is an important technique for solving problems in a variety of fields. Special languages have developed to serve as vehicles for system simulation as conventional languages seem to be quite inadequate to face this task.SIMULA is a powerful general purpose programming language which includes sophisticated simulation facilities. However, unfamiliarity with the language concepts and the restrictive amount of literature covering the language structure have led to the development of an inertia which has prevented many skilful programmers from using it. This paper presents an attempt towards introducing the concepts of simplicity and expressive power inherent in SIMULA to a wider audience. 相似文献