首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
N. Wirth 《Software》1971,1(4):309-333
The development of a compiler for the programming language PASCAL1 is described in some detail. Design decisions concerning the layout of program and data, the organization of the compiler including its syntax analyser, and the over-all approach to the project are discussed. The compiler is written in its own language and was implemented for the CDC 6000 computer family. The reader is expected to be familiar with Reference 1.  相似文献   

2.
Compiling code for the Icon programming language presents several challenges, particularly in dealing with types and goal-directed expression evaluation. In order to produce optimized code, it is necessary for the compiler to know much more about operations than is necessary for the compilation of most programming languages. This paper describes the organization of the Icon compiler and the way it acquires and maintains information about operations. The Icon compiler generates C code, which makes it portable to a wide variety of platforms and also allows the use of existing C compilers for performing routine optimizations on the final code. A specially designed implementation language, which is a superset of C, is used for writing Icon's run-time system. This language allows the inclusion of information about the abstract semantics of Icon operations and their type-checking and conversion requirements. A translator converts code written in the run-time language to C code to provide an object library for linking with the code produced by the Icon compiler. The translation process also automatically produces a database that contains the information the Icon compiler needs to generate and optimize code. This approach allows easy extension of Icon's computational repertoire, alternate computational extensions, and cross compilation.  相似文献   

3.
Jacob Palme 《Software》1976,6(3):405-409
SIMULA is a high-level language comparable in power to PL/I or ALGOL 68. SIMULA compilers exist for eight different computer series. SIMULA is standardized by a committee mainly consisting of one representative for each implementation. This has given good compatibility between the implementations and the efficient handling of standards problems. The fact that the SIMULA language is defined in such a way that there are no undefined constructs in the language has also helped compatibility and standardization.  相似文献   

4.
Janus is a symbolic language intended for use as an intermediate language in the transportation of software. Since its initial design four years ago, it has been used to implement a portable Pascal compiler, in the design of an Algol 68 compiler, and to realize a portable package of mathematical routines. These experiences, together with a critical re-evaluation of the design criteria, have led to some modification of the specifications of Janus and an increased confidence in the viability of the approach. They have also indicated some problems yet to be solved. This paper reviews the significant lessons which we have learned, and quotes some results which support our confidence.  相似文献   

5.
M. Richards 《Software》1971,1(2):135-146
Methods of achieving program portability are discussed, with particular reference to the mobility of compilers. The method of transferring the BCPL compiler is then described including the specification of OCODE which is the language used as an interface between the machine independent and machine dependent parts of the compiler.  相似文献   

6.
The ability to represent, manipulate, and optimize data placement and movement between processors in a distributed address space machine is crucial in allowing compilers to generate efficient code. Data placement is embodied in the concept of dataownership. Data movement can include not just the transfer of data values but the transfer of ownership as well. However, most existing compilers for distributed address space machines either represent these notions in a language-or machine-dependent manner, or represent data or ownership transfer implicitly. In this paper we describe XDP, a set of intermediate language extensions for representing and manipulating data and ownership transfers explicitly in a compller. XDP is supported by a set of per-processor structures that can be used to implement ownership testing and manipulation at run-time, XDP provides a uniform framework for translating and optimizing sequential, data parallel, and message-passing programs to a distributed address space machine. We describe analysis and optimization techniques for this explicit representation. Finally, we compare the intermediate languages of some current distributed address space compilers with XDP.  相似文献   

7.
H. J. Boom  E. de Jong 《Software》1980,10(6):435-473
The implementations of Algol 60, FORTRAN, Pascal and Algol 68 provided on the CDC Cyber 73 of the Stichting Academisch Rekencentrum Amsterdam are compared on both qualitative and quantitative aspects. This paper concentrates on those aspects which are likely to be of interest to language designers and implementers, and to users of other computer systems.  相似文献   

8.
This paper discusses the considerations that have played a role in the design of the language POOL2. This language integrates the structuring techniques of object-oriented programming with mechanisms for expressing parallelism. We introduce the basic principles of object-oriented programming and its significance for program development methodologies. Several approaches for integrating objects and parallelism are compared and arguments for the choices made in POOL2 are presented. We also explain why inheritance is not yet included in POOL2. A brief overview of the research in formal aspects of POOL is given. Finally we indicate some directions for future developments.  相似文献   

9.
Observations on the design of the special-purpose scientific programming language SL/1 are presented. SL/1 is intended for applications programming of the Control Data Corporation Cyber 203, a very high-performance vector processor, which is mainly used for scientific computation. The language design has been heavily influenced by the hardware characteristics of this machine and the needs of the Cyber 203 user community. Various aspects of the design of SL/1 are discussed and measurements of their use are presented. In addition, unexpected similarities between the resulting design of SL/1 and the design of FORTRAN are examined and several reasons for the continued widespread use of FORTRAN are suggested.  相似文献   

10.
SIGNAL belongs to the synchronous languages family which are widely used in the design of safety-critical real-time systems such as avionics, space systems, and nuclear power plants. This paper reports a compiler prototype for SIGNAL. Compared with the existing SIGNAL compiler, we propose a new intermediate representation (named S-CGA, a variant of clocked guarded actions), to integrate more synchronous programs into our compiler prototype in the future. The front-end of the compiler, i.e., the translation from SIGNAL to S-CGA, is presented. As well, the proof of semantics preservation is mechanized in the theorem prover Coq. Moreover, we present the back-end of the compiler, including sequential code generation and multithreaded code generation with time-predictable properties. With the rising importance of multi-core processors in safetycritical embedded systems or cyber-physical systems (CPS), there is a growing need for model-driven generation of multithreaded code and thus mapping on multi-core. We propose a time-predictable multi-core architecture model in architecture analysis and design language (AADL), and map the multi-threaded code to this model.  相似文献   

11.
The implementation of a compiler for a subject of PASCAL on the IBM 360 is reported. Some difficulties encountered using PL/I for the bootstrap are discussed.  相似文献   

12.
This paper introduces the database programming language RAPP, which is an integration of the data type relation and relational algebraic operations with the modular multiprocessing language Pascal Plus. A portable version of the RAPP compiler has been implemented and is described.  相似文献   

13.
We describe the transfer of a BCPL compiler installed on a PDP-11 to a hobbyist's home Z80 microcomputer. The design of the Z80 support software needed is explained in some detail. The development of a debugging Ocode interpreter and of an Ocode loader featuring code compression proved particularly helpful.  相似文献   

14.
The implementation of a hierarchical, process-oriented programming language for simulation (HSL) is described. It features a hybrid approach, involving the front end of a compiler and the back end of an interpreter. An HSL program is dichotomous in structure. Source statements from each part are translated into three-address code for an abstract machine, and the resulting code is then interpreted. The algorithms and the supportive data structures that effect the translation and interpretation of HSL are detailed. The host language for HSL is C++. HSL is machine independent and can be ported to any machine on which the host language is available. Its initial implementation was carried out on an NCR Tower. More recently, it was transferred to an NCR PC916.  相似文献   

15.
Manuel Reimer 《Software》1984,14(10):945-956
Modula/R is a database programming language that integrates the programming language Modula-2 and the relational database model. This paper describes the language concepts of Modula/R and its implementation on the personal computer Lilith within the database project LID AS. A transaction concept as an extension of the procedure concept is integrated into Modula/R to support its implementation in a multi-user environment with access to shared distributed databases through a network of personal computers.  相似文献   

16.
语义接受度(SAS)是衡量自然语言文本可理解程度的标尺。通过结合自动文摘系统评价方法和文体学分析方法,提出了可用于在线分析英语文学文本SAS的系统评价公式,并通过诺贝尔文学获奖作品《老人与海》的语料分析验证了公式的可适用性:不同的抽取率不会引起评价值的显著差异。尽管存在域的有限性、域的单一性和在线评价相对性等不足,此公式为文学评论者借助网络进行英语文本SAS在线评价提供了便利。  相似文献   

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.
随着语义检索的发展,近年来涌现了许多基于本体的研究和应用,但本体本身仍离不开领域专家手工或半自动化的构建,成为了本体研究领域的一个瓶颈。因此,本文着眼于本体的自动化构建,提出了一种用FCA(形式概念分析)从文本中提取并自动生成符合W3C标准的OWL通用本体库的方法。解决了目前本体构建自动化程度低,领域依赖性强的问题,使得本体的发展和应用不再是空中楼阁。  相似文献   

20.
层次关系是中文文本概念间存在的最为重要的关系之一,对层次关系的正确判定是进行领域本体自动构建、文本数据挖掘等信息处理的基础研究内容。先将概念间可能存在的候选层次关系罗列出来,构建词性序列语义余弦相似度和关系词语余弦相似度混合的核函数分类器,将概念间层次关系的挖掘问题转化为分类问题;再通过对文本数据进行模板标注来训练分类器;最后输入预处理后的中文文本,使用核函数分类器对候选层次关系进行判定。以空军武器装备领域的中文文本为测试数据,通过实验表明,该方法简单可靠,具有较好的正确率和召回率。  相似文献   

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

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