Spelling suggestions: "subject:"declaration programming""
1 |
Computing stable models of logic programsSinghi, Soumya. January 2003 (has links) (PDF)
Thesis (M.S.)--University of Kentucky, 2003. / Title from document title page (viewed June 21, 2004). Document formatted into pages; contains viii, 55 p. : ill. Includes abstract and vita. Includes bibliographical references (p. 52-54).
|
2 |
Theory and applications of answer set programmingErdem, Esra. January 2002 (has links) (PDF)
Thesis (Ph. D.)--University of Texas at Austin, 2002. / Vita. Includes bibliographical references. Available also from UMI Company.
|
3 |
Theory and applications of answer set programmingErdem, Esra 28 August 2008 (has links)
Not available / text
|
4 |
Datalog with constraints a new answer-set programming formalism /East, Deborah Jeanine, January 2001 (has links) (PDF)
Thesis (Ph. D.)--University of Kentucky, 2001. / Title from document title page. Document formatted into pages; contains vii, 75 p. : ill. Includes abstract. Includes bibliographical references (p. 70-72).
|
5 |
Computing stable models of logic programsSinghi, Soumya 01 January 2003 (has links)
Solution of any search problem lies in its search space. A search is a systematic examination of candidate solutions of a search problem. In this thesis, we present a search heuristic that we can cr-smodels. cr-smodels prunes the search space to quickly reach to the solution of a problem. The idea is to pick an atom for branching , that lowers the growth rate of the linear recurrence and thuse, minimizes the remaining search space. Our goal in developing cr-smodels is to develop a search heuristic that is efficient on a wide range of problems. Then, we test cr-smodels over a wide range of randomly generated benchmarks. we observed that often randomly generated graphs with no Hamiltonian cycle were trivial to solve. Since, Hamiltonian cycle is an important benchmark problem, my other goal is to develop techniques that generate hard instances of graphs with no Hamiltonian cycle.
|
6 |
Declarative modelling of parameter setting / Deklarativ modellering av parametersättningNordström, Didrik January 2015 (has links)
The parameter setting problem is part of a complex, automated process for customizing Scania's products; primarily trucks and buses. The problem is modelled as a stateless, acyclic graph of pure functions and variables. A subset of a deterministic, concurrent, demand-driven, declarative programming model is implemented under the Microsoft .NET framework. The implementation is evaluated based on suitability for solving the parameter setting problem, computational performance and general applicability within the organization. It is concluded that the model reduces the complexity of the parameter setting problem, mainly due to demand-driven (lazy) execution. The implementation scales as expected on sequential programs in time and memory with respect to input size. Parallel programs benefit partly from parallelism but bottlenecks in the .NET framework seem to limit the speedup. The general applicability of the programming model within the organization is potentially high and there are many extensions that can be added in the future, such as constraint programming. / Parametersättning är en del av en komplex, automatiserad process för att specialanpassa Scanias produkter – primärt lastbilar och bussar. Problemet är modellerat som en tillståndslös acyklisk graf av rena funktioner och variabler. En deterministisk, parallel, behovstyrd deklarativ programmeringsmodell har implementeras under Microsoft .NET-ramverket. Implementationen utvärderas utifrån lämplighet för parametersättning, prestanda och generell nytta inom organisationen. Modellen lyckas med att reducera komplexiteten för parametersättning, primärt tack vare behovstyrd (lat) exekvering. Implementationen skalar i både tid och minne i enlighet med förväntningarna för sekventiella program. Parallella program har delvis nytta av multipla processorkärnor men flaskhalsar i .NET-ramverket verkar begränsa prestandan. Programmeringsmodellens generella nytta inom organisationen är potentiellt hög och det finns många tillbyggnader som kan läggas till i framtiden, såsom villkorsprogrammering.
|
7 |
Supporting Effective Reuse and Safe Evolution in Metadata-Driven Software DevelopmentSong, Myoungkyu 29 April 2013 (has links)
In recent years, metadata-driven software development has gained prominence. In this implementation model, various application concerns are provided as third-party frameworks and libraries that the programmer configures through metadata, such as XML configuration files or Java annotations. Metadata-driven software development is a special case of declarative programming: metadata serves as a domain-specific language that the programmer uses to declare various concerns, whose implementation is provided by an elaborate ecosystem of libraries and frameworks that serve as pre-defined application building blocks. Examples abound: transparent persistence mechanisms facilitate data management; security frameworks provide access control and encryption; unit testing frameworks provide abstractions for implementing and executing unit tests, etc. Metadata-driven software development has been particularly embraced in enterprise computing as a means of providing standardized solutions to common application scenarios.
Despite the conciseness and simplicity benefits of metadata-driven software development, this implementation model introduces a unique set of reuse and evolution challenges. In particular, metadata is not reusable across application modules, and program evolution causes unsafe discrepancies between the main source code and its corresponding metadata. The research described in this dissertation addresses five fundamental problems of metadata-driven software development: (1) bytecode enhancements that transparently introduce concerns hinder program understanding and debugging; (2) mainstream enterprise metadata formats are hard to understand, evolve, and reuse; (3) concerns declared via metadata cannot be reused when source-to-source compiling emerging languages to mainstream ones; (4) metadata correctness cannot be automatically ensured as application source code is being refactored and enhanced; and (5) lacking built-in metadata, JavaScript programs can be enhanced with additional concerns only through manual source code changes.
The research described in this dissertation leverages domain-specific languages and automated code generation to enable effective reuse and safe evolution in metadata-driven software development. The specific innovations that address the problems outlined above are as follows: (1) a domain-specific language (DSL) describing bytecode enhancement that facilitates the understanding and debugging of additional concerns; (2) a novel metadata format expressed as a DSL that is easier to author, understand, reuse, and maintain than existing metadata formats; (3) automated metadata translation that enables effective reuse of target language additional concerns from source-to-source compiled source language programs; (4) metadata invariants---a new abstraction for expressing and verifying metadata coding convention; and (5) a new approach to declaratively enhancing JavaScript programs with additional concerns. / Ph. D.
|
8 |
Declarative modeling of coupled advection and diffusion as applied to fuel cellsDavies, Kevin L. 22 May 2014 (has links)
The goal of this research is to realize the advantages of declarative modeling for complex physical systems that involve both advection and diffusion to varying degrees in multiple domains. This occurs, for example, in chemical devices such as fuel cells. The declarative or equation-based modeling approach can provide computational advantages and is compatible with physics-based, object-oriented representations. However, there is no generally accepted method of representing coupled advection and diffusion in a declarative modeling framework.
This work develops, justifies, and implements a new upstream discretization scheme for mixed advective and diffusive flows that is well-suited for declarative models. The discretization scheme yields a gradual transition from pure diffusion to pure advection without switching events or nonlinear systems of equations. Transport equations are established in a manner that ensures the conservation of material, momentum, and energy at each interface and in each control volume. The approach is multi-dimensional and resolved down to the species level, with conservation equations for each species in each phase. The framework is applicable to solids, liquids, gases, and charged particles. Interactions among species are described as exchange processes which are diffusive if the interaction is inert or advective if it involves chemical reactions or phase change.
The equations are implemented in a highly modular and reconfigurable manner using the Modelica language. A wide range of examples are demonstrated—from basic models of electrical conduction and evaporation to a comprehensive model of a proton exchange membrane fuel cell (PEMFC). Several versions of the PEMFC model are simulated under various conditions including polarization tests and a cyclical electrical load. The model is shown to describe processes such as electro-osmotic drag and liquid pore saturation. It can be scaled in complexity from 4000 to 32,000 equations, resulting in a simulation times from 0.2 to 19 s depending on the level of detail. The most complex example is a seven-layer cell with six segments along the length of the channel. The model library is thoroughly documented and made available as a free, open-source software package.
|
9 |
The design, development and evaluation of a visual programming tool for novice programmers : psychological and pedagogical effects of introductory programming tools on programming knowledge of Greek studentsVasilopoulos, Ioannis Vasileiou January 2014 (has links)
This thesis reports a research project that aims to improve the teaching and learning of introductory programming from a pedagogical and psychological viewpoint. Towards this aim, seven principles for designing educational programming tools for novices were identified by reviewing literature regarding novices’ difficulties and using a theoretical framework defined by the psychological theories of Constructivism and Cognitive Load Theory. This set of design principles was not only theoretically identified, but its pedagogical impact was also empirically tested. For this reason, Koios, a new programming tool, was designed and developed as a manifestation of the combined set of principles. Empirical studies were conducted by a way of a quasi-experimental design in two different Greek secondary-education institutions. The independent variable was compliance with the set of the seven principles. Students’ level of programming skills (procedural knowledge) was the dependent variable, while the quality of their mental models in the domain of introductory programming (declarative knowledge) was the potential mediator. The effect of compliance with the set of principles on students’ programming skills and mental-model quality was explored via Koios’ evaluation. Declarative- and procedural-knowledge measurements, as well as a practical test, were used to collect data, which were analysed using ANOVA and hierarchical multiple regression. The major conclusions drawn from this study are:(a) compliance with the set of design principles does not affect the development of novices’ procedural and declarative programming knowledge, (b) a programming tool that highly complies with this set facilitates novices in the application of their procedural programming knowledge during program creation and (c) programming tools, declarative and procedural knowledge are independent components in learning to program. However, it was also concluded that the two knowledge types and a programming tool that highly complies with the set contribute significantly to novices’ programming performance. This study contributes to knowledge by theoretically identifying and empirically testing a set of design principles for educational programming software, and by producing and scientifically evaluating a programming tool as an embodiment of this set. Through this evaluation, the suggestion of Koios as a practically useful programming tool for novices seems to be well supported.
|
10 |
Visual Compositional-Relational ProgrammingZetterström, Andreas January 2010 (has links)
<p>In an ever faster changing environment, software developers not only need agile methods, but also agile programming paradigms and tools. A paradigm shift towards declarative programming has begun; a clear indication of this is Microsoft's substantial investment in functional programming. Moreover, several attempts have been made to enable visual programming. We believe that software development is ready for a new paradigm which goes beyond any existing declarative paradigm: visual compositional-relational programming. Compositional-relational programming (CRP) is a purely declarative paradigm -- making it suitable for a visual representation. All procedural aspects -- including the increasingly important issue of parallelization -- are removed from the programmer's consideration and handled in the underlying implementation. The foundation for CRP is a theory of higher-order combinatory logic programming developed by Hamfelt and Nilsson in the 1990's. This thesis proposes a model for visualizing compositional-relational programming. We show that the diagrams are isomorphic with the programs represented in textual form. Furthermore, we show that the model can be used to automatically generate code from diagrams, thus paving the way for a visual integrated development environment for CRP, where programming is performed by combining visual objects in a drag-and-drop fashion. At present, we implement CRP using Prolog. However, in future we foresee an implementation directly on one of the major object-oriented frameworks, e.g. the .NET platform, with the aim to finally launch relational programming into large-scale systems development.</p>
|
Page generated in 0.0993 seconds