829 resultados para Program Development


Relevância:

60.00% 60.00%

Publicador:

Resumo:

In an advanced program development environment, such as that discussed in the introduction of this book, several tools may coexist which handle both the program and information on the program in different ways. Also, these tools may interact among themselves and with the user. Thus, the different tools and the user need some way to communicate. It is our design principie that such communication be performed in terms of assertions. Assertions are syntactic objects which allow expressing properties of programs. Several assertion languages have been used in the past in different contexts, mainly related to program debugging. In this chapter we propose a general language of assertions which is used in different tools for validation and debugging of constraint logic programs in the context of the DiSCiPl project. The assertion language proposed is parametric w.r.t. the particular constraint domain and properties of interest being used in each different tool. The language proposed is quite general in that it poses few restrictions on the kind of properties which may be expressed. We believe the assertion language we propose is of practical relevance and appropriate for the different uses required in the tools considered.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Separating programs into modules is a well-known technique which has proven very useful in program development and maintenance. Starting by introducing a number of possible scenarios, in this paper we study different issues which appear when developing analysis and specialization techniques for modular logic programming. We discuss a number of design alternatives and their consequences for the different scenarios considered and describe where applicable the decisions made in the Ciao system analyzer and specializer. In our discussion we use the module system of Ciao Prolog. This is both for concreteness and because Ciao Prolog is a second-generation Prolog system which has been designed with global analysis and specialization in mind, and which has a strict module system. The aim of this work is not to provide a theoretical basis on modular analysis and specialization, but rather to discuss some interesting practical issues.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

It is now widely accepted that separating programs into modules has proven very useful in program development and maintenance. While many Prolog implementations include useful module systems, we feel that these systems can be improved in a number of ways, such as, for example, being more amenable to effective global analysis and allowing sepárate compilation or sensible creation of standalone executables. We discuss a number of issues related to the design of such an improved module system for Prolog. Based on this, we present the choices made in the Ciao module system, which has been designed to meet a number of objectives: allowing sepárate compilation, extensibility in features and in syntax, amenability to modular global analysis, etc.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

We provide an overall description of the Ciao multiparadigm programming system emphasizing some of the novel aspects and motivations behind its design and implementation. An important aspect of Ciao is that, in addition to supporting logic programming (and, in particular, Prolog), it provides the programmer with a large number of useful features from different programming paradigms and styles and that the use of each of these features (including those of Prolog) can be turned on and off at will for each program module. Thus, a given module may be using, e.g., higher order functions and constraints, while another module may be using assignment, predicates, Prolog meta-programming, and concurrency. Furthermore, the language is designed to be extensible in a simple and modular way. Another important aspect of Ciao is its programming environment, which provides a powerful preprocessor (with an associated assertion language) capable of statically finding non-trivial bugs, verifying that programs comply with specifications, and performing many types of optimizations (including automatic parallelization). Such optimizations produce code that is highly competitive with other dynamic languages or, with the (experimental) optimizing compiler, even that of static languages, all while retaining the flexibility and interactive development of a dynamic language. This compilation architecture supports modularity and separate compilation throughout. The environment also includes a powerful autodocumenter and a unit testing framework, both closely integrated with the assertion system. The paper provides an informal overview of the language and program development environment. It aims at illustrating the design philosophy rather than at being exhaustive, which would be impossible in a single journal paper, pointing instead to previous Ciao literature.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Ciao is a public domain, next generation multi-paradigm programming environment with a unique set of features: Ciao offers a complete Prolog system, supporting ISO-Prolog, but its novel modular design allows both restricting and extending the language. As a result, it allows working with fully declarative subsets of Prolog and also to extend these subsets (or ISO-Prolog) both syntactically and semantically. Most importantly, these restrictions and extensions can be activated separately on each program module so that several extensions can coexist in the same application for different modules. Ciao also supports (through such extensions) programming with functions, higher-order (with predicate abstractions), constraints, and objects, as well as feature terms (records), persistence, several control rules (breadth-first search, iterative deepening, ...), concurrency (threads/engines), a good base for distributed execution (agents), and parallel execution. Libraries also support WWW programming, sockets, external interfaces (C, Java, TclTk, relational databases, etc.), etc. Ciao offers support for programming in the large with a robust module/object system, module-based separate/incremental compilation (automatically -no need for makefiles), an assertion language for declaring (optional) program properties (including types and modes, but also determinacy, non-failure, cost, etc.), automatic static inference and static/dynamic checking of such assertions, etc. Ciao also offers support for programming in the small producing small executables (including only those builtins used by the program) and support for writing scripts in Prolog. The Ciao programming environment includes a classical top-level and a rich emacs interface with an embeddable source-level debugger and a number of execution visualization tools. The Ciao compiler (which can be run outside the top level shell) generates several forms of architecture-independent and stand-alone executables, which run with speed, efficiency and executable size which are very competive with other commercial and academic Prolog/CLP systems. Library modules can be compiled into compact bytecode or C source files, and linked statically, dynamically, or autoloaded. The novel modular design of Ciao enables, in addition to modular program development, effective global program analysis and static debugging and optimization via source to source program transformation. These tasks are performed by the Ciao preprocessor ( ciaopp, distributed separately). The Ciao programming environment also includes lpdoc, an automatic documentation generator for LP/CLP programs. It processes Prolog files adorned with (Ciao) assertions and machine-readable comments and generates manuals in many formats including postscript, pdf, texinfo, info, HTML, man, etc. , as well as on-line help, ascii README files, entries for indices of manuals (info, WWW, ...), and maintains WWW distribution sites.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

A range of methodologies and techniques are available to guide the design and implementation of language extensions and domainspecific languages. A simple yet powerful technique is based on source-tosource transformations interleaved across the compilation passes of a base language. Despite being a successful approach, it has the main drawback that the input source code is lost in the process. When considering the whole workflow of program development (warning and error reporting, debugging, or even program analysis), program translations are no more powerful than a glorified macro language. In this paper, we propose an augmented approach to language extensions for Prolog, where symbolic annotations are included in the target program. These annotations allow selectively reversing the translated code. We illustrate the approach by showing that coupling it with minimal extensions to a generic Prolog debugger allows us to provide users with a familiar, source-level view during the debugging of programs which use a variety of language extensions, such as functional notation, DCGs, or CLP{Q,R}.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

El objetivo de este Proyecto Final de Carrera es la realización de un ensayo de fiabilidad de componentes electrónicos, más concretamente de Minimódulos de Silicio, con el fin de estudiar su comportamiento a lo largo del tiempo de vida. Debido a la larga duración de los Minimódulos de Silicio , un ensayo de este tipo podría durar años, por lo que es necesario realizar un ensayo acelerado que acorte significativamente el tiempo del experimento, para ello, han de someterse a esfuerzos mayores que en condiciones normales de funcionamiento. A día de hoy, los Minimódulos de silicio, que conocemos como placas solares fotovoltaicas, se usan en infinidad de dispositivos debido a las múltiples ventajas que conllevan. La principal ventaja es poder llevar electricidad a cualquier parte del planeta sin necesidad de tener que hacer unas elevadas inversiones. Esta electricidad proviene de una fuente de energía inagotable y nada contaminante, con lo que ayudamos a mantener el equilibrio del planeta. La mayoría de las veces estas placas solares fotovoltaicas se usan en el exterior, soportando cambios de temperatura y de humedad elevados, de ahí, la importancia de realizar ensayos de fiabilidad, que muestren sus posibles causas de fallo, los efectos que producen estos fallos y los aspectos de diseño, fabricación y mantenimiento que puedan afectarles. Los Minimódulos de silicio utilizados en este proyecto son el modelo MC-SP0.8-NF-GCS de la empresa fabricante Multicomp. Para realizar el Proyecto hubiéramos necesitado una cámara climática que simulara unas condiciones ambientales determinadas, pero debido a la dificultad de iluminar el módulo dentro de la cámara climática hemos desarrollado un nuevo sistema de ensayos acelerados en temperatura. El nuevo sistema de ensayos acelerados consiste en: •Colocar los módulos fotovoltaicos en el laboratorio con un foco de 500W que irradia lo equivalente al sol. •Los tres módulos trabajarán a tres temperaturas diferentes para simular condiciones ambientales distintas, concretamente a 60°C, 72°C y 84°C. •Mediante un sistema automático de medida diseñado en LabVIEW, de manera simultánea tomará medidas de tensión en las tres placas y estudiaremos el grado degradación en cada placa. Se analizaran los resultados obtenido de cada una de las medidas y se realizará un estudio de fiabilidad y del proceso de degradación sufrido por los Minimódulos de silicio. Este PFC se puede dividir en las siguientes fases de trabajo siendo el ensayo la parte más larga en el tiempo: •Búsqueda de bibliografía documentación y normas aplicables. •Familiarización con los equipos y software, estudiando el manejo del software que viene con el Multímetro Keithley 2601 y el programa LabVIEW. •Desarrollo del hardware y sistemas necesarios para la realización del ensayo. •Montaje del ensayo •Realización del ensayo. •Análisis de resultados. ABSTRACT. The objective of this Final Project is conducting a test reliability of electronic components, more specifically Silicon minimodules, in order to study their behavior throughout the life span. Due to the long duration of Silicon minimodules a test like this could take years, so it is necessary to perform an accelerated significantly shorten the time of the experiment, testing for it, should be subjected to greater efforts than in normal operating. Today, the mini-modules, silicon is known as photovoltaic solar panels are used in a multitude of devices due to the many advantages they bring. The main advantage is to bring electricity to anywhere in the world without having to make high investments. This electricity comes from an inexhaustible source of energy and no pollution, thus helping to maintain the balance of the planet. Most of the time these solar photovoltaic panels are used on the outside, enduring changes in temperature and high humidity, hence, the importance of reliability testing, showing the possible causes of failure, the effects produced by these faults and aspects of design, manufacturing and maintenance that may affect them. The silicon mini-modules used in this project are the MC-SP0.8-NF-GCS model Multicomp manufacturing company. To realize the project we would have needed a climatic chamber to simulate specific environmental conditions, but due to the difficulty of illuminating the module in the climate chamber we have developed a new system of accelerated tests in temperature. The new system is accelerated tests: •Place the PV modules in the laboratory with a focus on the equivalent 500W radiating sun. •The three modules work at three different temperatures to simulate different environmental conditions, namely at 60 °C, 72 °C and 84 °C. •Automatic measurement system designed in LabVIEW, simultaneous voltage measurements taken at the three plates and study the degradation degree in each plate. The results obtained from each of the measurements and a feasibility study and degradation suffered by the silicon is performed minimodules were analyzed. This PFC can be divided into the following phases of the test work the longest part being overtime: •Literature search and documentation standards. •Familiarization with equipment and software, studying management software that comes with the Keithley 2601 multimeter and the LabVIEW program. •Development of hardware and systems necessary for the conduct of the trial. •Experiment setup •Carrying out the experiment. •Analysis of results.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Expulsion from school is life changing. This single event can alter the trajectory of a student's life--for better or for worse. How life changes is unique for each individual student. Risk and protective factors that impact an individual student's resilience determine the level of positive or negative outcomes experienced as a result of expulsion. Educators have the opportunity to take advantage of this disruption in students' education to improve the trajectory of students' lives. However, without thoughtful intervention from caring educators, this interruption in students' education may have an irreparable destructive impact on students' future. The purpose of this study was to understand the expulsion experience from the point of view of the student in order to represent this critical stakeholder group in future policy and program development, implementation, and decision-making. Students' narratives are a means for members of the educational community to access students' experiences and perceptions in order to understand the impact of expulsion on students' lives. Students' perspectives are presented through thick description in this narrative case study. The experience of these eight students is evidence that expulsion can change students' lives in a positive way. Knowing this, responsible educators must develop interventions for expelled students that channel the positive life-changing potential of this experience. Educators must develop interventions focused on bringing forth protective factors that are documented to increase resilience and to make students less susceptible to the risks inherent in removing them from school. Recommendations for educators and policy-makers are presented to assist educators in preventing expulsion and improving educational and socio-emotional outcomes for expelled students.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Mode of access: Internet.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

National Highway Traffic Safety Administration, Office of Program Development and Evaluation, Washington, D.C.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Federal Railroad Administration, Office of Policy and Program Development, Washington, D.C.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Final report.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

New York - New Jersey Port Authority, New York

Relevância:

60.00% 60.00%

Publicador:

Resumo:

"The material in this document was contributed by State Employment Security Agency, Unemployment Insurance Service, and Office of Regional Management Staff..."

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Federal Railroad Administration, Office of Policy and Program Development, Washington, D.C.