361 |
Formal verification of a synchronous data-flow compiler : from Signal to C / Vérification formelle d’un compilateur synchrone : de Signal vers CNgô, Van Chan 01 July 2014 (has links)
Les langages synchrones tels que Signal, Lustre et Esterel sont dédiés à la conception de systèmes critiques. Leurs compilateurs, qui sont de très gros programmes complexes, peuvent a priori se révéler incorrects dans certains situations, ce qui donnerait lieu alors à des résultats de compilation erronés non détectés. Ces codes fautifs peuvent invalider des propriétés de sûreté qui ont été prouvées en appliquant des méthodes formelles sur les programmes sources. En adoptant une approche de validation de la traduction, cette thèse vise à prouver formellement la correction d'un compilateur optimisé et industriel de Signal. La preuve de correction représente dans un cadre sémantique commun le programme source et le code compilé, et formalise une relation entre eux pour exprimer la préservation des sémantiques du programme source dans le code compilé. / Synchronous languages such as Signal, Lustre and Esterel are dedicated to designing safety-critical systems. Their compilers are large and complicated programs that may be incorrect in some contexts, which might produce silently bad compiled code when compiling source programs. The bad compiled code can invalidate the safety properties that are guaranteed on the source programs by applying formal methods. Adopting the translation validation approach, this thesis aims at formally proving the correctness of the highly optimizing and industrial Signal compiler. The correctness proof represents both source program and compiled code in a common semantic framework, then formalizes a relation between the source program and its compiled code to express that the semantics of the source program are preserved in the compiled code.
|
362 |
The modernization of a DOS-basedtime critical solar cell LBICmeasurement system.Hjern, Gunnar January 2019 (has links)
LBIC is a technique for scanning the local quantum efficiency of solar cells. This kind of measurements needs a highly specialized, and time critical controlling software. In 1996 the client, professor Markus Rinio, constructed an LBIC system, and wrote the controlling software as a Turbo-Pascal 7.0 application, running under the MS-DOS 6.22 operating system. By now (2018) both the software and several hardware components are in dire need to be modernized. This thesis thoroughly describes several important aspects of this work, and the considerations needed for a successful result. This includes both very foundational choices about the software architecture, the choice of suitable operating system, the threading model, and the adaptation to new hardware with vastly different behavior. The project also included a new hardware module for position reports and instrument triggering, as well as several adaptations to transform the DOS-based LBIC software into a pleasant modern GUI application.
|
363 |
Adapting the polytope model for dynamic and speculative parallelizationJimborean, Alexandra 14 September 2012 (has links) (PDF)
In this thesis, we present a Thread-Level Speculation (TLS) framework whose main feature is to speculatively parallelize a sequential loop nest in various ways, to maximize performance. We perform code transformations by applying the polyhedral model that we adapted for speculative and runtime code parallelization. For this purpose, we designed a parallel code pattern which is patched by our runtime system according to the profiling information collected on some execution samples. We show on several benchmarks that our framework yields good performance on codes which could not be handled efficiently by previously proposed TLS systems.
|
364 |
RACR: A Scheme Library for Reference Attribute Grammar Controlled Rewriting: Developer ManualBürger, Christoff 07 February 2013 (has links)
This report presents RACR, a reference attribute grammar library for the programming language Scheme.
RACR supports incremental attribute evaluation in the presence of abstract syntax tree rewrites. It provides a set of functions that can be used to specify abstract syntax tree schemes and their attribution and construct respective trees, query their attributes and node information and annotate and rewrite them. Thereby, both, reference attribute grammars and rewriting, are seamlessly integrated, such that rewrites can reuse attributes and attribute values change depending on performed rewrites – a technique we call Reference Attribute Grammar Controlled Rewriting. To reevaluate attributes influenced by abstract syntax tree rewrites, a demand-driven, incremental evaluation strategy, which incorporates the actual execution paths selected at runtime for control-flows within attribute equations, is used. To realize this strategy, a dynamic attribute dependency graph is constructed throughout attribute evaluation – a technique we call Dynamic Attribute Dependency Analyses.
The report illustrates RACR's motivation, features, instantiation and usage. In particular its application programming interface is documented and exemplified. The report is a reference manual for RACR developers. Further, it presents RACR’s complete implementation and therefore provides a good foundation for readers interested into the details of reference attribute grammar controlled rewriting and dynamic attribute dependency analyses.:1. Introduction
1.1. RACR is Expressive, Elegant, Ecient, Flexible and Reliable
1.2. Structure of the Manual
2. Library Overview
2.1. Architecture
2.2. Instantiation
2.3. API
3. Abstract Syntax Trees
3.1. Specification
3.2. Construction
3.3. Traversal
3.4. Node Information
4. Attribution
4.1. Specification
4.2. Evaluation and Querying
5. Rewriting
5.1. Primitive Rewrite Functions
5.2. Rewrite Strategies
6. AST Annotations
6.1. Attachment
6.2. Querying
7. Support API
A. RACR Source Code
B. MIT License
API Index
|
365 |
Grafické intro 64kB s použitím OpenGL / Graphics Intro 64kB Using OpenGLMilet, Tomáš January 2012 (has links)
This thesis deals with the creation of the intro with limited size. This work describes methods for reducing the size of the final application. The main part describes methods for generating graphic content and methods for its animation. It deals with creation of textures and geometry. Another part is aimed on the physical simulation of particle and elastic systems.
|
366 |
Web applications using the Google Web Toolkit / Webanwendungen unter Verwendung des Google Web Toolkitsvon Wenckstern, Michael 04 June 2013 (has links) (PDF)
This diploma thesis describes how to create or convert traditional Java programs to desktop-like rich internet applications with the Google Web Toolkit.
The Google Web Toolkit is an open source development environment, which translates Java code to browser and device independent HTML and JavaScript.
Most of the GWT framework parts, including the Java to JavaScript compiler as well as important security issues of websites will be introduced.
The famous Agricola board game will be implemented in the Model-View-Presenter pattern to show that complex user interfaces can be created with the Google Web Toolkit.
The Google Web Toolkit framework will be compared with the JavaServer Faces one to find out which toolkit is the right one for the next web project. / Diese Diplomarbeit beschreibt die Erzeugung desktopähnlicher Anwendungen mit dem Google Web Toolkit und die Umwandlung klassischer Java-Programme in diese.
Das Google Web Toolkit ist eine Open-Source-Entwicklungsumgebung, die Java-Code in browserunabhängiges als auch in geräteübergreifendes HTML und JavaScript übersetzt.
Vorgestellt wird der Großteil des GWT Frameworks inklusive des Java zu JavaScript-Compilers sowie wichtige Sicherheitsaspekte von Internetseiten.
Um zu zeigen, dass auch komplizierte graphische Oberflächen mit dem Google Web Toolkit erzeugt werden können, wird das bekannte Brettspiel Agricola mittels Model-View-Presenter Designmuster implementiert.
Zur Ermittlung der richtigen Technologie für das nächste Webprojekt findet ein Vergleich zwischen dem Google Web Toolkit und JavaServer Faces statt.
|
367 |
“She said she was called Theodore” : - A modality analysis of five transcendental saints in the 1260’s Legenda Aurea and 1430’s Gilte LegendeAtterving, Emmy January 2017 (has links)
This thesis explores modalities in two hagiographical collections from the late Middle Ages; the Legenda Aurea and the Gilte Legende by drawing inspiration from post-colonial hybridity theories.. It conducts a close textual analysis by studying the use of pronouns in five saints’ legends where female saints transcend traditional gender identities and become men, and focuses on how they transcend, live as men, and die. The study concludes that the use of pronouns is fluid in the Latin Legenda Aurea, while the Middle English Gilte Legende has more female pronouns and additions to the texts where the female identity of the saints is emphasised. This is interpreted as a sign of the feminisation of religious language in Europe during the late Middle Ages, and viewed parallel with the increase of holy women at that time. By doing this, it underlines the importance of new words and concepts when describing and understanding medieval views on gender.
|
368 |
Web applications using the Google Web Toolkitvon Wenckstern, Michael 05 June 2013 (has links)
This diploma thesis describes how to create or convert traditional Java programs to desktop-like rich internet applications with the Google Web Toolkit.
The Google Web Toolkit is an open source development environment, which translates Java code to browser and device independent HTML and JavaScript.
Most of the GWT framework parts, including the Java to JavaScript compiler as well as important security issues of websites will be introduced.
The famous Agricola board game will be implemented in the Model-View-Presenter pattern to show that complex user interfaces can be created with the Google Web Toolkit.
The Google Web Toolkit framework will be compared with the JavaServer Faces one to find out which toolkit is the right one for the next web project.:I Abstract
II Contents
III Acronyms and Glossary
III.I Acronyms
III.II Glossary
IV Credits
1 Introduction
2 Basics
2.1 Development of the World Wide Web
2.2 Hypertext Markup Language
2.3 Cascading Style Sheets
2.4 JavaScript
2.5 Hypertext Markup Language Document Object Model
2.6 Asynchronous JavaScript and XML
3 GWT toolbox and compiler
3.1 GWT in action
3.2 A short overview of the toolkit
3.3 GWT compiler and JSNI
3.3.1 Overview of GWT compiler and JSNI
3.3.2 Deferred binding and bootstrapping process
3.3.3 GWT compiler steps and optimizations
3.4 Java Runtime Environment Emulation
3.5 Widgets and Panels
3.5.1 Overview of GWT Widgets
3.5.2 Event handlers in GWT Widgets
3.5.3 Manipulating browser’s DOM with GWT DOM class
3.5.4 GWT Designer and view optimization using UiBinder
3.6 Remote Procedure Calls
3.6.1 Comparison of Remote Procedure Calls with Remote Method Invocations
3.6.2 GWT’s RPC service and serializable whitelist
3.7 History Management
3.8 Client Bundle
3.8.1 Using ImageResources in the ClientBundle interface
3.8.2 Using CssResources in the ClientBundle interface
4 Model-View-Presenter Architecture
4.1 Comparison of MVP and MVC
4.2 GWT Model-View-Presenter pattern example: Agricola board game
4.3 Extending the Agricola web application with mobile views
4.4 Introducing activities in the Agricola Model-View-Presenter pattern enabling browser history
5 Comparison of the two web frameworks: GWT and JSF
5.1 Definitions of comparison fields
5.2 Comparison in category 1: Nearly completely static sites with a little bit of dynamic content, e.g. news update
5.3 Comparison in category 2: Doing a survey in both technologies
5.4 Comparison in category 3: Creating a forum to show data
5.5 Comparison in category 4: Writing a chat application
5.6 Comparison in category 5: Writing the speed game Snake
5.7 Summary
6 Security
6.1 Download Tomcat
6.2 Dynamic Web Application Project with GWT and Tomcat
6.3 Establish HTTPS connections in Tomcat
6.3.1 Create a pem certificate
6.3.2 Convert pem certificate into a key store object
6.3.3 Configure Tomcat’s XML files to enable HTPPS
6.4 Establish a database connection in Tomcat
6.4.1 Create TomcatGWT user and schema, and add the table countries
6.4.2 Configure Tomcat’s XML files to get access to the database connection
6.4.3 PreparedStatements avoid MySQL injections
6.5 Login mechanism in Tomcat
6.6 SafeHtml
7 Presenting a complex software application written in GWT
8 Conclusions
8.1 Summary
8.2 Future work
A Appendix
A 1 Configure the Google Web Toolkit framework in Eclipse
A 1.1 Install the Java Developer Kit
A 1.2 Download Eclipse
A 1.3 Install the GWT plugin in Eclipse
A 1.4 Create first GWT Java Project
A 2 Figures
A 3 Listings
A 3.1 Source code of the Agricola board game
A 3.2 Source code of GWT and JSF comparison
A 4 Tables
R Lists and References
R 1 Lists
R 1.1 List of Tables
R 1.2 List of Figures
R 1.3 List of Listings
R 2 References
R 2.1 Books
R 2.2 Online resources / Diese Diplomarbeit beschreibt die Erzeugung desktopähnlicher Anwendungen mit dem Google Web Toolkit und die Umwandlung klassischer Java-Programme in diese.
Das Google Web Toolkit ist eine Open-Source-Entwicklungsumgebung, die Java-Code in browserunabhängiges als auch in geräteübergreifendes HTML und JavaScript übersetzt.
Vorgestellt wird der Großteil des GWT Frameworks inklusive des Java zu JavaScript-Compilers sowie wichtige Sicherheitsaspekte von Internetseiten.
Um zu zeigen, dass auch komplizierte graphische Oberflächen mit dem Google Web Toolkit erzeugt werden können, wird das bekannte Brettspiel Agricola mittels Model-View-Presenter Designmuster implementiert.
Zur Ermittlung der richtigen Technologie für das nächste Webprojekt findet ein Vergleich zwischen dem Google Web Toolkit und JavaServer Faces statt.:I Abstract
II Contents
III Acronyms and Glossary
III.I Acronyms
III.II Glossary
IV Credits
1 Introduction
2 Basics
2.1 Development of the World Wide Web
2.2 Hypertext Markup Language
2.3 Cascading Style Sheets
2.4 JavaScript
2.5 Hypertext Markup Language Document Object Model
2.6 Asynchronous JavaScript and XML
3 GWT toolbox and compiler
3.1 GWT in action
3.2 A short overview of the toolkit
3.3 GWT compiler and JSNI
3.3.1 Overview of GWT compiler and JSNI
3.3.2 Deferred binding and bootstrapping process
3.3.3 GWT compiler steps and optimizations
3.4 Java Runtime Environment Emulation
3.5 Widgets and Panels
3.5.1 Overview of GWT Widgets
3.5.2 Event handlers in GWT Widgets
3.5.3 Manipulating browser’s DOM with GWT DOM class
3.5.4 GWT Designer and view optimization using UiBinder
3.6 Remote Procedure Calls
3.6.1 Comparison of Remote Procedure Calls with Remote Method Invocations
3.6.2 GWT’s RPC service and serializable whitelist
3.7 History Management
3.8 Client Bundle
3.8.1 Using ImageResources in the ClientBundle interface
3.8.2 Using CssResources in the ClientBundle interface
4 Model-View-Presenter Architecture
4.1 Comparison of MVP and MVC
4.2 GWT Model-View-Presenter pattern example: Agricola board game
4.3 Extending the Agricola web application with mobile views
4.4 Introducing activities in the Agricola Model-View-Presenter pattern enabling browser history
5 Comparison of the two web frameworks: GWT and JSF
5.1 Definitions of comparison fields
5.2 Comparison in category 1: Nearly completely static sites with a little bit of dynamic content, e.g. news update
5.3 Comparison in category 2: Doing a survey in both technologies
5.4 Comparison in category 3: Creating a forum to show data
5.5 Comparison in category 4: Writing a chat application
5.6 Comparison in category 5: Writing the speed game Snake
5.7 Summary
6 Security
6.1 Download Tomcat
6.2 Dynamic Web Application Project with GWT and Tomcat
6.3 Establish HTTPS connections in Tomcat
6.3.1 Create a pem certificate
6.3.2 Convert pem certificate into a key store object
6.3.3 Configure Tomcat’s XML files to enable HTPPS
6.4 Establish a database connection in Tomcat
6.4.1 Create TomcatGWT user and schema, and add the table countries
6.4.2 Configure Tomcat’s XML files to get access to the database connection
6.4.3 PreparedStatements avoid MySQL injections
6.5 Login mechanism in Tomcat
6.6 SafeHtml
7 Presenting a complex software application written in GWT
8 Conclusions
8.1 Summary
8.2 Future work
A Appendix
A 1 Configure the Google Web Toolkit framework in Eclipse
A 1.1 Install the Java Developer Kit
A 1.2 Download Eclipse
A 1.3 Install the GWT plugin in Eclipse
A 1.4 Create first GWT Java Project
A 2 Figures
A 3 Listings
A 3.1 Source code of the Agricola board game
A 3.2 Source code of GWT and JSF comparison
A 4 Tables
R Lists and References
R 1 Lists
R 1.1 List of Tables
R 1.2 List of Figures
R 1.3 List of Listings
R 2 References
R 2.1 Books
R 2.2 Online resources
|
Page generated in 0.0641 seconds