首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 250 毫秒
1.
The Common Lisp Object System (CLOS) is an extension of Common Lisp for object-oriented programming being designed as part of the ANSI X3J13 Common Lisp standardization process. This report describes an algebraic specification of the method combination and application component of CLOS. The specification is based on a draft of the standard presented to the ANSI committee in spring of 1987, and was done using an executable, typed functional programming language called Axis. The result suggests a logical mapping from the abstract data types and operations in the specification to the classes and methods which could become that part of the CLOS kernel (called the metaobject protocol) involved in method combination. In addition, the existence of a formal algebraic specification for CLOS allows the effects of changes in the language to be tested during the design phase, rather than during implementation. This is illustrated by showing how the language semantics change when thecall-next-method function is allowed to take arguments, an extension proposed in the draft standard. Standardization documents like the CLOS standard are usually written in a semi-natural language, but if they are accompanied by an additional formal specifiction during their generation, the probability of undetected or lately discovered errors in the design decreases, and the specification also provides an unambiguous source of reference for implementors.  相似文献   

2.
OpenMusic (OM) is a visual programming language developed on top of Common Lisp and CLOS, in which most of the functional and object-oriented programming concepts can be implemented and carried out graphically. Although this visual language was designed for musical applications, the focus in this paper is to describe and study OM as a complete general-purpose programming environment.  相似文献   

3.
智能对象语言CLOS的分布实现   总被引:1,自引:0,他引:1  
CLOS系统是一个嵌入Common Lisp的面向对象标准语言。文中结合所提出的类分方法,通过引入同步或异步通信协议和RPC并发控制,详细介绍了一个新的分布CLOS系统ParCLOS。  相似文献   

4.
LISP provides a powerful interactive environment that supports rapid prototyping of complex software. This has always been a main feature of the language, and one that has contributed to its widespread use for experimental applications. Recent years have also seen the development of LISP systems that provide performance comparable with, or better than, that of more traditional programming languages. The next logical step is to show that systems developed in LISP with a rapid-prototyping approach can also provide excellent performance. As an example of the suitability of LISP for rapid prototyping of efficient systems, this article presents a case study where a system was built in a Common Lisp environment out of a series of existing tools. Reliance on existing tools, as well as the interactive features typical of LISP, resulted in extremely rapid prototyping. The system, a computer-based tutor for beginner-level Chinese, was developed in less than three man-weeks. Very rapid development time, however, did not in any way sacrifice performance: the system's performance is quite good and comparable to that of ad hoc systems. This is true of both the interactive component of the program, i.e. the interface to the student, and the database component, which stores the system's knowledge about the Chinese language. The factors that contributed most to the short development time were the extensive reliance on existing tools, the use of an efficient knowledge representation language to implement most of the data structures, and the use of an integrated programming environment. All of these factors were in turn made possible, or at least greatly facilitated, by the choice of LISP as the programming language.  相似文献   

5.
6.
This article discusses cognitive models of learning to program recursion and their relation to lessons on recursion in an intelligent computer tutor for LISP programming (the LISP Tutor). The cognitive models are implemented as production systems in which programming skill is characterized as the decomposition of programming goals into subgoals and elementary actions via the application of programming plans. Two sets of learning mechanisms are used in the cognitive models. Analogical problem-solving mechanisms use declarative knowledge of example program solutions to overcome problem-solving impasses. Knowledge compilation mechanisms summarize problem solutions into efficient problem-solving skill. Analyses and simulations of novice and expert programming were used to develop ideal models of the programming knowledge to confer upon students and bugs that characterize common misconceptions. The LISP Tutor uses the ideal models and bugs to guide its interactions with students. Experimental evaluations of the LISP Tutor indicate that it is more efficient and effective than classroom instruction.  相似文献   

7.
CLOS系统是一个嵌入CommonLisp的面向对象标准语言,本文结合我们提出的类划分方法,通过引入同步或异步通信协议和RPC并发控制,详细介绍了一个新的分布CLOS系统ParCLOS。测试结果表明:若结点较均匀,运行效率大于80%。  相似文献   

8.
This paper describes some of the design considerations in developing a tool for maintaining generic functions in the proposed Common Lisp Object-Oriented System (CLOS). It is argued that tools based on class lattices provide insufficient support for programming in a language that utilizes multimethods and method combination. A new type of browser, known as a Generic Function Browser (GFB), was designed to handle the more complicated style of procedure definition offered in CLOS. Some simple example of the use of this tool are provided, along with a discussion of the philosophy underlying its design.The work described here was initially undertaken while the author was employed at Xerox AI Systems.  相似文献   

9.
Using the blackboard architecture, an expert system is built as a collection of knowledge sources which are scheduled by a controller and communicate through a shared data region, called a blackboard. The performance of such a system may be significantly enhanced by the concurrent execution of the knowledge sources. However, introduction of concurrent execution into blackboard systems requires extension of the architecture with new mechanisms for scheduling knowledge source activities, synchronizing knowledge source interactions, and accessing shared data. This paper describes our design for transaction-based facilities supporting parallel execution of knowledge sources in a blackboard system.  相似文献   

10.
Shopyrin  D. 《Software, IEEE》2006,23(3):62-73
The author proposes a new approach for multimethod implementation in C++ based on recursive deferred dispatching. The proposed approach provides a partially broken dependency between target classes and a broken dependency between target classes and multimethods. This approach provides multimethods with strong type safety and constant execution time. A multimethod is a virtual method of several objects. Programming languages such as Dylan and the Common Lisp Object System (CLOS) allow for multimethods.  相似文献   

11.
函数式语言并行化的方法   总被引:1,自引:0,他引:1  
Lisp作为一个表处理语言.有着悠久的历史,而COMMON LISP提供一r丰富的数据集和多程序设计模式:函数的,强制的和面向对象的〔“·幻。我们以COMMON LISP为蓝本完成T XJD一LISP/CLOS,它是为我国曙光一号机配备的.现已通过国家教委组织的鉴定。最近我们正在开发COMMON LISP的并行版本,作为863计划资助项目,这个工作很有意义。该并行系统将加速计算,并且还能对XJD一 LISP/CLOS提供支持。本文就函数式语言并行化的方法进行了探讨。  相似文献   

12.
为了有效地构造可靠、便于维护的多Agent系统(MAS),根据Grammarware的工程化思想与产生式编程技术,以基于黑板的单Agent结构为基础,提出一种Agent模板语言(APL)。通过一个企业业务过程管理(BPM)场景,说明在应用中如何使用APL描述Agent中针对具体应用的数据类型、知识源组件等,并由解析器将APL转换为JADE上的执行代码,进而实现多Agent系统的快速构建,实现MAS自顶向下的开发,从而提高系统开发的效率,增强系统的灵活性与可复用性。  相似文献   

13.
李波  赵沁平 《计算机学报》1993,16(3):188-196
自动程序设计系统APA使用类比推理技术,向过去经验学习编写新的LISP程序.本文首先给出了它的知识表示和系统结构,然后讨论怎样发现与新问题相似的已解问题,怎样沿着相似推导构作新问题的程序.APA是[1,2]中类比推理理论的一个实验系统.  相似文献   

14.
Automated software synthesis is one of the central techniques used in knowledge-based software engineering to enhance the quality and efficiency of software development. Although many software synthesis systems have been developed, automatic control of these systems remains a difficult problem. Our goal is to reduce user interaction in transformational and schema-based synthesizers by means of significant advances in control mechanisms.This paper describes an approach for synthesis control that integrates a blackboard control architecture with an existing synthesis system. We present a framework language called MetaMorphos that allows explicit representations of control knowledge for use in selecting appropriate synthesis actions. MetaMorphos represents control decisions explicitly in terms of actions, events, and states. It is task-specific and contains knowledge about programming and how to select synthesizing methods based on given features. By employing a blackboard control architecture, our synthesis controller provides adaptability for dynamic control behaviors and flexibility to handle unanticipated situations during software development.Applying MetaMorphos in the domain of software synthesis, we illustrate how we use MetaMorphos to select appropriate transformations, data structure and algorithm schemas during the synthesis. An example shows how MetaMorphos handles the difficult problem of selecting schemas for two very similar problems which, in the best case, require different solutions.  相似文献   

15.
Abstract: The SKADE system models expertise in corporate settlement decisions using the blackboard approach. The full model has four knowledge sources: General Counsel, Attorney, Manager and Insurance Adjuster. The combined expertise from each of these is required to make the settlement decision. A control component in the model coordinates the activities of the various knowledge sources. Based on the latest data entries on the blackboard, the control selects and executes the next knowledge source. The blackboard model reproduces the experts' opportunistic reasoning processes by the interaction between the various knowledge sources. The results of analyses of a hypothetical case through a series of experiments with the SKADE system indicate that the blackboard is an appropriate model for development of multiple cooperative expert systems in the settlement decision domain. Compared to straight rule-based models, this blackboard provides more efficient problem solving. The initial success with the blackboard model suggests that further work needs to be done to see whether more complex models can be built to incorporate a broader range of determinants of settlement decisions.  相似文献   

16.
A framework of definitions for, and questions about, notions of computability, complexity, and logic for term algebras is built around known results in the literature and the current work. The term algebra for finite binary trees and various classes of programs for computing on them, a class similar to LISP being the most powerful, serve as a focus. Several interesting classes of programs less powerful than LISP are obtained by varying the functions and predicates available in the programming language. It is shown how they relate to one another and then some of their properties are explored. For example, there is a class powerful enough to compute all the partial recursive functions on the natural numbers that is neither sufficiently powerful to code the binary trees into the natural numbers nor to recognize any set that is both infinite and coinfinite. A simple logic sufficient to talk about trees and LISP-like computations is given and it is suggested that certain pebble games provide very reasonable measures of complexity of trees. It is also indicated how various particular results give further insight into such fundamental notions as Turing computable and recursively enumerable.  相似文献   

17.
This paper describes a technique which has been developed for automatically acquiring temporal knowledge for use in an Intelligent Simulation Training System (ISTS)*. The objective of the ISTS is to train students in monitoring and controlling physical objects in time and space. The ISTS consists of a graphic computer simulation, an expert system, and a user interface. The graphic computer simulation represents the system to be monitored. The trainee responds to routine and/or critical situations as depicted in the simulation by typing in commands to simulation objects.

ISTS domain knowledge is automatically acquired by a subsystem known as ELICIT: Expertise Learner and Intelligent Causal Inference Tool. ELICIT incorporates a modified GERT network for representing knowledge concerning dependencies among temporal events. The network is used as a basis for prompting the domain expert for knowledge. In addition, ELICIT draws upon knowledge contained in the network for the development of contingency plans concerning timing of events. This implementation is coded in Common LISP and Joshua (a knowledge representation language developed by Symbolics, Inc.) on a Symbolics 3630 LISP machine.  相似文献   


18.
The complexity and diversity of real world applications have forced researchers in the AI field to focus more on the integration of diverse knowledge representation and reasoning techniques for solving challenging, real world problems. Our development environment, BEST (Blackboard based Expert Systems Toolkit), is aimed to provide the ability to produce large scale, evolvable, heterogeneous intelligent systems. BEST incorporates the best of multiple programming paradigms in order to avoid restricting users to a single way of expressing either knowledge or data. It combines rule based programming, object oriented programming, logic programming, procedural programming and blackboard modelling in a single architecture for knowledge engineering, so that the user can tailor a style of programming to his application, using any or arbitrary combinations of methods to provide a complete solution. The deep integration of all these techniques yields a toolkit more effective even for a specific single application than any technique in isolation or collections of multiple techniques less fully integrated. Within the basic, knowledge based programming paradigm, BEST offers a multiparadigm language for representing complex knowledge, including incomplete and uncertain knowledge. Its problem solving facilities include truth maintenance, inheritance over arbitrary relations, temporal and hypothetical reasoning, opportunistic control, automatic partitioning and scheduling and both blackboard and distributed problem solving paradigms  相似文献   

19.
In real-world applications, knowledge bases consisting of all the available information for a specific domain, along with the current state of affairs, will typically contain contradictory data, coming from different sources, as well as data with varying degrees of uncertainty attached. An important aspect of the effort associated with maintaining such knowledge bases is deciding what information is no longer useful; pieces of information may be outdated; may come from sources that have recently been discovered to be of low quality; or abundant evidence may be available that contradicts them. In this paper, we propose a probabilistic structured argumentation framework that arises from the extension of Presumptive Defeasible Logic Programming (PreDeLP) with probabilistic models, and argue that this formalism is capable of addressing these basic issues. The formalism is capable of handling contradictory and uncertain data, and we study non-prioritized belief revision over probabilistic PreDeLP programs that can help with knowledge-base maintenance. For belief revision, we propose a set of rationality postulates — based on well-known ones developed for classical knowledge bases — that characterize how these belief revision operations should behave, and study classes of operators along with theoretical relationships with the proposed postulates, including representation theorems stating the equivalence between classes of operators and their associated postulates. We then demonstrate how our framework can be used to address the attribution problem in cyber security/cyber warfare.  相似文献   

20.
《Artificial Intelligence》1985,26(3):251-321
The control problem—which of its potential actions should an AI system perform at each point in the problem-solving process?—is fundamental to all cognitive processes. This paper proposes eight behavioral goals for intelligent control and a ‘blackboard control architecture’ to achieve them. The architecture distinguishes domain and control problems, knowledge, and solutions. It enables AI systems to operate upon their own knowledge and behavior and to adapt to unanticipated problem-solving situations. The paper shows how opm, a blackboard control system for multiple-task planning, exploits these capabilities. It also shows how the architecture would replicate the control behavior of hearsay-ii and hasp. The paper contrasts the blackboard control architecture with three alternatives and shows how it continues an evolutionary progression of control architectures. The paper concludes with a summary of the blackboard control architecture's strengths and weaknesses.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号