共查询到20条相似文献,搜索用时 15 毫秒
1.
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. 相似文献
2.
A high-level programming language like PASCAL offers data types, variables, constants and operators, with which the programmer can represent the actual world as a model inside the computer. The world of numbers and text has been represented in the computer for many years by various kinds of variables. The importance of computer graphics is increasing extremely fast. But the development of high-level programming languages, which include standard constructs for processing graphical informations, is far from where it could be. A good system should be based on understandable concepts, easy to learn and similar to normal programming, so that the programmer can fully concentrate upon the design of his pictures[1–4]. For these purposes PASCAL/Graph 3 was designed and implemented[5–8]. 相似文献
3.
C语言程序设计是高效计算机专业学生必修的一门基础课程,同时也是后续课程的入门课程,对于掌握基本计算机技术有着重要意义。尤其在Linux系统下,该系统在所有操作系统中占着重要地位,如何掌握计算机C语言编程技巧是当务之急。为此,本文重点探讨基于Linux系统分析计算机C语言编程技巧。 相似文献
4.
It was observed that school children in Arab countries find difficulty in learning programming in a language other than their native language. There are only few Arabic programming languages in the literature; most of which are never or partially implemented. In this paper, we present the design of a new Arabic programming language (ARABLAN) which is planned to be implemented for use in teaching programming for school children in Arab countries. 相似文献
5.
The EXODUS database toolkit, and in particular the E persistent programming language, have been used in two substantial database system implementation efforts by the authors, the Ariel database rule system and the Triton nested relation DBMS. An important advantage of using a persistent programming language for database system implementation is that it is easy to implement special-purpose persistent objects used by the DBMS such as catalogs, rule indexes, and nested relational structures. Support for transactions built into a persistent programming language greatly reduces the effort required to implement a database system. A disadvantage observed is that it is not possible to map the type system of the DBMS to the type system of the underlying programming language while still retaining good performance for ad hoc queries. Also, software engineering difficulties arise when a persistent language makes a distinction between database types and main-memory types. 相似文献
6.
This paper reports on the design and development of a high level language, Malus, for use in implementing a time-sharing system. Emphasized are the ways that the language and its compiler accommodate the specialized requirements of systems programming and programmers. Among these are the need to generate highly efficient object code, to allow inter-programmer communication by program self-documentation, and to define and organize system tables and data. In addition, the Malus compiler is highly modular; thus the language may be modified or augmented in response to user needs unforeseen during langauge design. Systems programs cannot be machine independent and Malus allows explicit control of emitted code when an application requires particular efficiency or use of privileged instructions. There is also a facility allowing nested redefinition of identifiers. Efficient storage management and data access is effected by the availability of based structures, a register storage class and built-in functions to facilitate their use. Malus is evaluated both in terms of some general criteria for systems implementation languages and by an appraisal of user reactions. While this assessment shows a few areas where the language might be improved, it is felt that Malus is a valuable and effective tool for systems implementation. 相似文献
7.
Adaptive Web systems (AWS) are Web-based systems that can adapt their features such as, presentation, content, and structure, based on users’ behaviour and preferences, device capabilities, and environment attributes. A framework was developed in our research group to provide the necessary components and protocols for the development of adaptive Web systems; however, there were several issues and shortcomings ( e.g. low productivity, lack of verification mechanisms, etc.) in using the framework that inspired the development of a domain-specific language for the framework. This paper focuses on the proposal, design, and implementation of AWL, the Adaptive Web Language, which is used to develop adaptive Web systems within our framework. Not only does AWL address the existing issues in the framework, but it also offers mechanisms to increase software quality attributes, especially, reusability. An example application named PENS (a personalized e-News system) is explained and implemented in AWL. AWL has been designed based on the analysis of the adaptive Web domain, having taken into account the principles of reuse-based software engineering (product-lines), domain-specific languages, and aspect-oriented programming. Specially, a novel design decision, inspired by aspect-oriented programming paradigm, allows separate specification of presentation features in an application from its adaptation features. The AWL’s design decisions and their benefits are explained. 相似文献
8.
为提高C语言程序设计课程的教学质量,让学生更好地掌握核心技能,针对课程中教学难点多、语法知识多、学生重视程度不够等问题进行了认真分析,同时结合笔者在长期的教学实践过程中积累的经验,从教学目标、教学设计、教学内容选取、教学方法应用、考核方式等方面进行教学改革,提出了相关的解决方案,取得了较好的教学效果,教学质量明显提高。 相似文献
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.
This paper presents an interactive graphics system called L.E.G.O. The purpose of L.E.G.O. is to model two- and three-dimensional objects using Euclidean geometry constructions. L.E.G.O. has a layered structure which makes it convenient to use, both for the experienced programmer and the novice. The programs may be written in a compiled language (C), written interactively in an interpreted language (LISP) or developed using a graphical interface in a multiple-window environment. Applications of L.E.G.O. include computer-assisted instruction of geometry and computer graphics, geometric modeling, and kinematic analysis. The use of imperative constructions and the powerful interface based on the idea of graphical programming are the most distinctive features of the system. 相似文献
11.
HAGI is an object-oriented graphics system developed on top of the X window system. In addition to providing facilities that structured graphics systems such as GKS usually have, HAGI supports a high- level graphics paradigm with the following features: - + In addition to graphical objects, the system provides a class of application objects with a higher level of abstraction than graphical objects.
- + Graphics manipulation operations can be issued simplyfrom application objects without explicitly referring to specific graphical objects. Thus graphics manipulation appears to be transparent to application programmers.
- + Graphical objects are designed to encompass more semantics, thus are at a level close to the application. For example, they useflexible visual objects to determine their visual appearance.
HAGI provides such a high-level application/graphics interface by maintaining a dependency relationship between graphical objects and application objects. 相似文献
12.
The OSAM*.KBMS is a knowledge-base management system, or the so-called
next-generation database management system, for non-traditional
data/knowledge-intensive applications. In order to define, query, and
manipulate a knowledge base, as well as to write codes to implement
any
application system, we have developed an object-oriented knowledge-base
programming language called K to serve as the high-level interface of
OSAM*.KBMS. This paper presents the design of K, its implementation, and its
supporting KBMS developed at the Database Systems Research and Development
Center of the University of Florida.
Edited by
Dennis McLeod. Received July 1992 / Accepted August
1995 相似文献
13.
Molecular computer graphics (MCG) has become the indispensable complement of experimental chemical and biological tools and, in a way, will shape the evolution of these fields. This accelerated and popularized evolution takes root in the visual, even scenic, grasping of fundamental chemical concepts, perceived as veritable ideograms, which condense a vast amount of information with a few two- or threedimensional graphic symbols. With MCG one can carry out real computerized syntheses of chemical images. MCG is also an ideal tool through which to visualize the changes of a system as a function of time. This review article describes the potentials and advantages of structural MCG for visualizing the basic steps of important modelization concepts, particularly for handling on-line structures in information networks and in computer-assisted drug design (CADD) applications. 相似文献
14.
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. 相似文献
15.
The realization of an abstract programming language is a good approach for automating the software production process and facilitating the correctness proof of a software system. This paper introduces a formal language for programming at the abstract level by combining Pascal with VDM (Vienna Development Method). The notation provided by the language obliges programmers to consider the correctness of programs throughout the whole process of programming, and the proof axiom and rules presented in this paper may be used to prove the correctness of programs. A complete example is given to illustrate how to program using APL and how to prove the correctness of programs using the given axiom and rules. 相似文献
16.
Programming multiprocessor parallel architectures is a complex task. This paper describes a block-structured scientific programming language, BLAZE, designed to simplify this task. BLAZE contains array arithmetic, ‘forall’ loops, and APL-style accumulation operators, which allow natural expression of fine grained parallelism. It also employs an applicative or functional procedure invocation mechanism, which makes it easy for compilers to extract coarse grained parallelism using machine specific program restructuring. Thus BLAZE should allow one to achieve highly parallel execution on multiprocessor architectures, while still providing the user with conceptually sequential control flow. A central goal in the design of BLAZE is portability across a broad range of parallel architectures. The multiple levels of parallelism present in BLAZE code, in principle, allow a compiler to extract the types of parallelism appropriate for the given architecture, while neglecting the remainder. This paper describes the features of BLAZE, and show how this language would be used in typical scientific programming. 相似文献
17.
提出在C语言程序设计课程中引入课程思政.从教学设计和实施策略两个方面着手,针对日常教学如何与思政元素融合链接进行了探索,提出课程思政有目标,有深度,有温度,有趣味.这些新举措可为理工科类课程思政的实施和发展提供一些参考. 相似文献
19.
The development of the user interface concerns all aspects of a software system that are targeted to the interactive delivery
of its functionality and data. Today, user interface development accounts for a large proportion of the overall software implementation,
while the programming process involves various recurring software patterns. Based on the identification of key commonly occurring
user interface programming patterns, we have designed and implemented a user interface programming language with built-in
constructs to directly support those software patterns, offering declarative programming features such as: precondition-based
actions, unidirectional constraints and data-content monitors. Initially, we introduce the deployment syntax and semantics
of the novel programming elements, relying upon subject interaction scenarios. Then we reveal the most demanding implementation
aspects of the code generator and the respective run-time library. 相似文献
20.
Realized cellular automata may be operated by universal computer systems as programmable special-purpose processors for parallelizable problems. Because of their architecture (local neighbourhood, small storage size per cell, they are well suited for processing systolic algorithms. A cellular programming language — named CEPROL — is presented which offers means for programming and controlling cellular automata processing such algorithms. 相似文献
|