共查询到20条相似文献,搜索用时 453 毫秒
1.
We have developed the visual language compiler-compiler (VLCC) system to automatically generate visual programming environments. VLCC is a grammar based system that can support implementation of any visual language by assisting the language designer in defining the language's graphical objects, syntax, and semantics. The final result of the generation process includes an integrated environment with a visual editor and a compiler for the defined visual language. In VLCC, graphical tools define visual languages to create both graphical objects and composition rules. Visual editors enable language designers to directly and visually manipulate the syntax of these languages. To capture the widest range of visual languages, the VLCC system can be configured for a specific language class. Different language classes can be characterized depending on their graphical objects' structure and on the way they can be composed. Also, box and arrow diagrams are defined for primitive objects with attaching points and for composition rules to join boxes and arrows at those attaching points. After choosing the visual language type to create, the designer can concentrate on language definition details. VLCC uses the positional grammar model as its underlying grammar formalism 相似文献
2.
《Journal of Parallel and Distributed Computing》1994,22(2):235-250
Phred is a visual parallel programming language in which programs can be statically analyzed for deterministic behavior. This paper presents the Phred language, techniques for analyzing the language, and a programming environment which supports Phred programming. There are many methods for specifying synchronization and data sharing in parallel programs. The Phred programmer uses graph constructs for describing parallelism, synchronization, and data sharing. These graphs are formally described in this paper as a graph grammar. The use of graphs in Phred provides an intuitive and visual representation for parallel computations. The inadvertent specification of nondeterministic computations is a common error in parallel programming. Phred addresses the issue of determinacy by visually indicating regions of a program where nondeterminacy may exist. This analysis and its integration into a programming environment is presented here. The Phred programming environment supports the specification, analysis, and execution of Phred programs. The distribution of the programming environment itself over several workstations is also described. 相似文献
3.
This paper shows an environment which supports the development of multi-thread dialogue interactive systems.The environment includes several tools and run-time support programs for the design and implementation of the user interface of an interactive system.First,methods of user interface specification with Elementary Nets are discussed.Then,the syntax of a user interface specification language based on Elementary Nets and the pre-compiler for the language as well as a graphic editor for Elementary Nets construction are described.Finally,an example is given to illustrate the design process of a user interface. 相似文献
4.
《Journal of Visual Languages and Computing》2007,18(2):165-226
We present a technique for implementing visual language compilers through standard compiler generation platforms. The technique exploits eXtended Positional Grammars (XPGs, for short) for modeling the visual languages in a natural way, and uses a set of mapping rules to translate an XPG specification into a translation schema. This lets us generate visual language parsers through standard compiler–compiler techniques and tools like YACC. The generated parser accepts exactly the same set of visual sentences derivable through the application of XPG productions. The technique represents an important achievement, since it enables us to perform visual language compiler construction through standard compiler–compilers rather than specific compiler generation tools. This makes our approach particularly appealing, since compiler–compilers are widely used and rely on a well-founded theory. Moreover, the approach provides the basis for the unification of traditional textual language technologies and visual language compiler technologies. 相似文献
5.
The front end of the software life cycle is an important phase in the development of quality software systems. Due to the interactive nature of the requirements specification phase, automated tools assist in capturing user concepts and conveying these concepts to the developers. This paper presents a syntax-directed editor developed for the Descartes software specification language. The editor helps in constructing the specifications by detecting and preventing syntactic and static semantic errors. The editor uses the visual notation of Nassi–Shneiderman charts for the external representation of Descartes specifications. The specifications are edited in their visual form directly within the editor. Use of a syntax-directed editor for the construction of Descartes specifications is expected to reduce specification errors, enhance constructibility, and in turn increase productivity. © 1997 John Wiley & Sons, Ltd. 相似文献
6.
7.
Chang S.-K. Tauber M.J. Yu B. Yu J.-S. 《IEEE transactions on pattern analysis and machine intelligence》1989,15(5):506-525
The SIL-ICON compiler is a software system for the specification, interpretation, prototyping, and generation of icon-oriented systems. The system design of the SIL-ICON compiler is presented. The icon system G, the icon dictionary ID, the operator dictionary OD, and the extended task action grammar ETAG are described. An application example to design a text editor using the Heidelberg icon set is also presented in detail 相似文献
8.
9.
10.
With the growing complexity of multiprocessing systems and distributed computing systems, there is an increasing need to provide a formal methodology for deriving a model to represent software design for the software development of these systems. The formal methodology presented in this paper uses attributed grammars, and extends formal methods commonly used in the definition of programming languages and compiler techniques for representing the design specification of software systems and validating the implementation. This model provides a common basis in the software development phases through automated design analysis, test-case generation, and validation of the software system. This paper covers the construction of the model for the design representation using attributed grammar and the analysis of the software system design based on the model. 相似文献
11.
12.
智能化的汇编语言集成开发环境 总被引:1,自引:0,他引:1
目前,绝大多数的程序设计语言都推出了基于Windows平台的可视化编译工具.针对汇编语言开发工具存在的缺陷,提出智能化的汇编语言集成开发环境的设计思想,并对系统的工作机制和关键模块的设计进行阐述.本系统能为汇编语言的教学提供有力的支持. 相似文献
13.
This paper generalizes an algebraic method for the design of a correct compiler to tackle specification and verification of an optimized compiler. The main optimization issues of concern here include the use of existing contents of registers where possible and the identification of common expressions. A register table is introduced in the compiling specification predicates to map each register to an expression whose value is held by it. We define different kinds of predicates to specify compilation of programs, expressions and Boolean tests. A set of theorems relating to these predicates, acting as a correct compiling specification, are presented and an example proof within the refinement algebra of the programming language is given. Based on these theorems, a prototype compiler in Prolog is produced. 相似文献
14.
Adrian Johnstone Peter D. Mosses Elizabeth Scott 《Innovations in Systems and Software Engineering》2010,6(1-2):145-153
We have developed novel techniques for component-based specification of programming languages. In our approach, the semantics of each fundamental programming construct is specified independently, using an inherently modular framework such that no reformulation is needed when constructs are combined. A language specification consists of an unrestricted context-free grammar for the syntax of programs, together with an analysis of each language construct in terms of fundamental constructs. An open-ended collection of fundamental constructs is currently being developed. When supported by appropriate tools, our techniques allow a more agile approach to the design, modelling, and implementation of programming and domain-specific languages. In particular, our approach encourages language designers to proceed incrementally, using prototype implementations generated from specifications to test tentative designs. The components of our specifications are independent and highly reusable, so initial language specifications can be rapidly produced, and can easily evolve in response to changing design decisions. In this paper, we outline our approach, and relate it to the practices and principles of agile modelling. 相似文献
15.
G. COSTAGLIOLA A. DELUCIA S. OREFICE G. POLESE 《Journal of Visual Languages and Computing》2002,13(6):573
An important step in the design of visual languages is the specification of the graphical objects and the composition rules for constructing feasible visual sentences. The presence of different typologies of visual languages, each with specific graphical and structural characteristics, yields the need to have models and tools that unify the design steps for different types of visual languages. To this aim, in this paper we present a formal framework of visual language classes. Each class characterizes a family of visual languages based upon the nature of their graphical objects and composition rules. The framework has been embedded in the Visual Language Compiler–Compiler (VLCC), a graphical system for the automatic generation of visual programming environments. 相似文献
16.
基于可视化的C语言运行平台的设计 总被引:1,自引:0,他引:1
可视化技术给人机界面的开发带来了巨大的变化,程序语言编写及运行的可视化环境使人机界面的实现可以通过可视动画的交互方式进行。文章针对于C语言,采用VC++工具进行可视化编辑环境的设计,实现C语言可视动画化运行及交互方式化运行的全过程。 相似文献
17.
In this paper the design of a visual program editor and its specification using formal grammars are discussed. We consider an environment to specify, analyse and execute visual programs for a Geographical Information System (GIS). The lack of sophisticated user interfaces is one of the major drawbacks to Geographical Information Systems, particularly for people without a sound background in computer science. The use of a visual language approach is useful in order to hide the plethora of basic GIS functions, while providing ready- to-use tools to solve users' tasks. The visual environment provides users with higher level interfaces; it is based on the module concept, which is conceived as a software building block that implements a solution to a general basic task and is presented to the user through an interactive frame. Complex GIS queries can be carried out by interconnecting modules into flow networks, using a direct manipulation approach. 相似文献
18.
19.
GNU Emacs is usually used only as an extensible editor. However, the ability to integrate inferior processes into GNU Emacs makes it an attractive programming environment. Like Interlisp and Smalltalk-80, GNU Emacs can be extended dynamically by its user. Unlike these programming environments, it can be used easily as a programming environment for an arbitrary programming language, and not just for its extension language. This paper discusses the methods of extending GNU Emacs and how we have applied them in creating a programming environment for a high-level specification language called AGENT. 相似文献
20.
ASTRAL is a formal specification language for real-time systems. It is intended to support formal software development and,
therefore, has been formally defined. The structuring mechanisms in ASTRAL allow one to build modularized specifications of
complex systems with layering. A real-time system is modeled by a collection of state machine specifications and a single
global specification. This paper discusses the ASTRAL Software Development Environment (SDE), which is an integrated set of
design and analysis tools based on the ASTRAL formal framework. The tools that make up the support environment are a syntax-directed
editor, a specification processor, a verification condition generator, a browser kit, a model checker, and a mechanical theorem
prover.
This revised version was published online in June 2006 with corrections to the Cover Date. 相似文献