共查询到20条相似文献,搜索用时 0 毫秒
1.
2.
Michael Eisenberg 《Knowledge》1994,7(4):239-246
Commercial applications for the arts tend to enforce a division between the use of learnable direct manipulation interfaces and the use of powerful, well supported programming environments. In contrast, programmable applications integrate these two software-design paradigms (i.e. direct manipulation and programming languages) and thereby attempt to exploit the strengths of both. A sample graphics application, SchemePaint, is outlined, and some of the issues related to the creation of programmable applications for the arts are discussed. 相似文献
3.
Spreadsheets are very common for information processing to support decision making by both professional developers and non-technical end users. Moreover, business intelligence and artificial intelligence are increasingly popular in the industry nowadays, where spreadsheets have been used as, or integrated into, intelligent or expert systems in various application domains. However, it has been repeatedly reported that faults often exist in operational spreadsheets, which could severely compromise the quality of conclusions and decisions based on the spreadsheets. With a view to systematically examining this problem via survey of existing work, we have conducted a comprehensive literature review on the quality issues and related techniques of spreadsheets over a 35.5-year period (from January 1987 to June 2022) for target journals and a 10.5-year period (from January 2012 to June 2022) for target conferences. Among other findings, two major ones are: (a) Spreadsheet quality is best addressed throughout the whole spreadsheet life cycle, rather than just focusing on a few specific stages of the life cycle. (b) Relatively more studies focus on spreadsheet testing and debugging (related to fault detection and removal) when compared with spreadsheet specification, modeling, and design (related to development). As prevention is better than cure, more research should be performed on the early stages of the spreadsheet life cycle. Enlightened by our comprehensive review, we have identified the major research gaps as well as highlighted key research directions for future work in the area. 相似文献
4.
Features are pieces of core functionality of a program that is relevant to particular stakeholders. Features pose dependencies and constraints among each other. These dependencies and constraints describe the possible number of variants of the program: A valid feature configuration generates a specific variant with unique behavior. Feature-Oriented Programming is used to implement features as program units. This paper introduces rbFeatures, a feature-oriented programming language implemented on top of the dynamic programming language Ruby. With rbFeatures, programmers use software product lines, variants, and features as first-class entities. This allows several runtime reflection and modification capabilities, including the extension of the product line with new features and the provision of multiple variants. The paper gives a broad overview to the implementation and application of rbFeatures. We explain how features as first-class entities are designed and implemented, and discuss how the semantics of features are carefully added to Ruby programs. We show two case studies: The expression product line, a common example in feature-oriented programming, and a web application. 相似文献
5.
6.
服务组合是构建面向服务、松耦合、高适应性的应用系统的主要途径.现行服务组合技术大多只适于构造需求明确、业务流程可预先定义的情况.然而,现实中存在大量需要边执行边探索、“摸着石头过河”式的问题求解形式.针对这类需求,结合网络化科研协作中的实际问题,提出一种最终用户可探索式服务组合的方法,重点讨论了探索式服务组合编程模型、服务推荐等关键问题.此外,从使用者角度对所提出的组合方法及其实现机制给予了定性分析和评价. 相似文献
7.
智能家居赋予家庭设备以智能,受到用户的广泛欢迎.由于用户需求不同,服务提供商采用“触发-动作”编程(TAP)模式以支持用户定制规则.然而,现在TAP编程和智能家居执行引擎中流行的Event-State时序范式极易出错,且难以修改规则和追踪运行错误.对TAP缺陷的原因进行系统分析之后,提出一种编写和修改难度较低、且能够检测规则运行异常的方案,记为SSRules.SSRules允许用户以一种改进的State-State时序范式输入规则,并基于Z3定理证明器将其翻译为Event-State时序范式,且为开源智能家居系统Home Assistant所接受的规则输入.考虑到智能家居需要实时掌握设备的动态,SSRules引入了运行时子系统获取实体状态信息,并对规则执行有效性检查.最后,基于Unity3D开发了智能家居模拟器HA-Simulator.测试结果表明:SSRules与传统方法相比表达简洁,规则数目平均减少60%左右,且能够及时检测瞬时异常并记录原因,更易被用户理解和使用. 相似文献
8.
9.
为适应构造混搭应用时用户对数据的动态变化的需求,在电子数据表和数据流的基础上,提出了一种面向最终用户的两级编程模型,采用基于电子数据表的自上而下的构造模式和基于数据流的自下而上的自适应修改模式构造混搭应用,该方式不仅可以为用户提供电子数据表风格的数据呈现和编程方式,而且对数据流提供一组混搭修改机制支持用户快速撤销操作序列、更新组合应用以适应用户需求的变化,降低了构造混搭应用的复杂度,实验结果表明,该编程模型提高了混搭应用的效率. 相似文献
10.
Dick Grune 《Information Processing Letters》1984,19(4):181-185
Two-level grammars are very readable formalisms for generating Chomsky Type 0 languages. Teaching and understanding them is greatly aided by the presence of a sentence generator. This paper shows how a usable sentence generator can be constructed. A working program is available from the author. 相似文献
11.
面向对象的逻辑图示语言 总被引:1,自引:0,他引:1
本语言介绍了图示语言基本概念及其特点,在事件驱动机制的基础上提出了逻辑驱动机制和多表达式结构,对函数式语言、逻辑语言和面向对象语言进行了理论上的分析,提出了它们在本质相容性和统一性并阐述了这三种技术在我们开发的逻辑图示语言Vilog中的结合。 相似文献
12.
This article presents a semantic view of the programming language ALGOL 68 [1]. The presentation emphasizes those elements of the language which form the basis for viewing an ALGOL 68 program as a composite expression, built-up through embedded expression layers. It is intended to give a glimpse of the semantic issues present in ALGOL 68 rather than a tutorial or general introduction. This discussion of the language defined by the Revised Report follows the treatment given by Branquart, Lewi, Sintzoff and Wodon [2] for the language defined by the original Report [3]. 相似文献
13.
Pervasiveness of Internet‐based applications and computing devices has increased cybersecurity threats for wide range of users. Studies have shown that application security flaws have their roots in programming languages used for application development. Some vulnerabilities are due to programmer's negligence and others are due to the vulnerabilities present in the programming languages and their libraries. Developers may not be aware of the existing flaws in the programming languages and do not have time to take necessary measures as they develop applications. To cope with the challenge, this article proposes a security feature framework for programming languages to understand various exploitations and possible mitigations in programming languages. This security feature framework can be used to evaluate existing programming languages for potential vulnerabilities, level of security support, and the language features needed to mitigate these vulnerabilities. Moreover, language designers may use this framework as a guide to ensure that the language being designed has necessary and sufficient security feature set. The proposed security feature framework is then applied to several popular programming languages to evaluate the level of security feature coverage and gaps in these languages along with some recommendations on how to address these gaps. 相似文献
14.
Orthogonally persistent object systems 总被引:2,自引:0,他引:2
Malcolm Atkinson Ph.D. Ronald Morrison Ph.D. 《The VLDB Journal The International Journal on Very Large Data Bases》1995,4(3):319-401
Persistent Application Systems (PASs) are of increasing social and economic importance. They have the potential to be long-lived, concurrently accessed, and consist of large bodies of data and programs. Typical examples of PASs are CAD/CAM systems, office automation, CASE tools, software engineering environments, and patient-care support systems in hospitals. Orthogonally persistent object systems are intended to provide improved support for the design, construction, maintenance, and operation of PASs. Persistence abstraction allows the creation and manipulation of data in a manner, that is independent of its lifetime, thereby integrating the database view of information with the programming language view. This yields a number of advantages in terms of orthogonal design and programmer productivity which are beneficial for PASs. Design principles have been proposed for persistent systems. By following these principles, languages that provide persistence as a basic abstraction have been developed. In this paper, the motivation for orthogonal persistence is reviewed along with the above mentioned design principles. The concepts for integrating programming languages and databases through the persistence abstraction, and their benefits, are given. The technology to support persistence, the achievements, and future directions of persistence research are then discussed. 相似文献
15.
We put forward that required enhancements to constraint programming technology include concurrency, more sophisticated control mechanisms, and new features for expressing preferences. 相似文献
16.
Muhammed S. Al‐Mulhem 《Concurrency and Computation》2000,12(5):281-288
Concurrent programming is more difficult to use and understand than sequential programming. In order to simplify this type of programming a number of approaches have been developed such as visual programming. Visual Occam (VISO) is a visual programming language for concurrent programming. It has a graphical syntax based on the language Occam and its semantics is represented both in petri net and process calculus. This paper presents a modular visual approach to write concurrent programs using the VISO language. Concurrent programs in VISO are specified graphically at different levels of abstraction. This paper describes this modular visual approach by constructing two examples in VISO. The first example is a simple concurrent program and it is mainly used to show the details of constructing a concurrent program in VISO. The second example is a larger concurrent program with more levels of abstraction. Copyright © 2000 John Wiley & Sons, Ltd. 相似文献
17.
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. 相似文献
18.
Young economists sometimes ask which computer programming languages they should learn. This paper answers that question by suggesting that they begin with a high level language like GAUSS, GAMS, Mathematica, Maple or MATLAB depending on their field of specialization in economics. Then they should work down to one of the low level languages such as Fortran, Basic, C, C++ or Java depending on the planned areas of application. Finally, they should proceed to the languages which are used to develop graphical interfaces and internet applications, viz. Visual Basic, C, C++ or Java. 相似文献
19.
20.
Four programming languages (Fortran, Cobol, Jovial and the proposed DoD standard) are compared in the light of modern ideas of good software engineering practice. The comparison begins by identifying a core for each language that captures the essential properties of the language and the intent of the language designers. These core languages then serve as a basis for the discussion of the language philosophies and the impact of the language on gross program organization and on the use of individual statements. 相似文献