Spelling suggestions: "subject:"comain specific languages"" "subject:"cdomain specific languages""
41 |
Analyse et compilation de langages de programmation parallèle / Analysis and Compilation of Parallel Programming LanguagesSusungi, Adilla 26 November 2018 (has links)
La compilation traditionnelle est confrontée à de nombreux défis face aux besoins d'optimisations de programmes pour architectures parallèles. Un défi particulier est la conception de langages et représentations intermédiaires (RIs) appropriés.Bien que différentes RIs aient été proposées pour repousser les limites de la compilation traditionnelle, la plupart ne sont toujours pas adaptées pour appliquer des transformations de programmes pertinentes.Différentes alternatives sont donc de plus en plus exploitées, telles que l'autotuning ou la compilation interactive. Ces dernières nécessitent l'usage de langages intermédiaires fondamentalement différents, par exemple, les méta-langages pour la transformation de programmes. Dans cette thèse, centrée sur les besoins en applications numériques, nous étudions ce type de meta-langages; nous adressons particulièrement quatre questions:(i) Comment introduire une expressivité spécifique à un domaine?(ii) Comment repenser leur conception pour améliorer leur flexibilité dans la composition de transformations et la génération de plusieurs variantes de programme?(iii) Jusqu'où pouvons-nous introduire du support pour le NUMA (Non-Uniform Memory Access)?(iv) En tant que nouvelle classe de méta-langages, comment formaliser leur sémantique? Nous répondons à ces questions au travers de la conception et la sémantique de TeML, un méta-langage pour l'optimisation d'applications tensorielles. / Traditional compilation faces numerous challenges with program optimizations for parallel architectures. A particular challenge is the design of proper intermediate languages and representations to enable the application of relevant optimization techniques.Various parallel intermediate representations and languages have been proposed.To overcome this issue, different alternatives are more and more exploitedsuch as empirical autotuning or interactive compilation. Such alernatives require fondamentally different typesof intermediates languages such as transformation meta-languages. In this thesis, we study transformation meta-languages for numerical applications: wa particularly address four questions:(i) How do we introduce domain-specific expressiveness?(ii) How do we rethink their design to enhance their flexibility in composing optimizations paths and generating multiple program variants?(iii) How far can we introduce NUMA (Non-Uniform Memory Access) awareness?(iv) As a new class of meta-languages, how do we formalize their semantics? We answer these questions through the design and semantics of TeML, a tensor optimizations meta-language.
|
42 |
A language-independent methodology for compiling declarations into open platform frameworks / Compilation de déclarations dans des cadriciels : une méthodologie indépendante du langageVan der Walt, Paul 14 December 2015 (has links)
Dans le domaine des plates-formes ouvertes, l’utilisation des cadriciels (frameworks) enrichis par des déclarations pour exprimer les permissions de l’application est de plus en plus répandue. Ceci est une réaction logique au fait qu’il y a une explosion d’adoption des appareils embarqués et mobiles. Leur omniprésence dans notre vie quotidienne engendre des craintes liées à la sécurité et à la vie privée, car l’usager partage de plus en plus ses données et ressources privées avec des tiers qui développent des applications auxquelles on n’a pas de raison de faire confiance. Malheureusement, la manière dont ces langages de spécification ainsi que ces cadres d’applications sont développés est généralement assez ad hoc et repose sur un domaine d’application et un langage de programmation fixes. De plus, ces cadriciels ne sont pas assez restrictifs pour régler le problème de la fuite de données privées et ne donnent souvent pas non plus assez d’informations à l’usager sur le comportement attendu de l’application. Cette thèse présente une méthodologie généraliste pour développer des cadriciels dirigés par des déclarations, qui cible un spectre large de langages de programmation. Nous montrons comment des langages de déclaration expressifs permettent de spécifier avec modularité les droits d’accès aux ressources ainsi que le flux de contrôle d’une telle application. Ces langages peuvent ensuite être compilés en un cadriciel garantissant à l’usager final le respect de ces permissions. Par rapport aux cadriciels existants, notre méthodologie permet de guider la personne qui développe des applications à partir des spécifications ainsi que d’informer l’usager final sur l’usage des ressources sensibles. Contrairement aux travaux existants, la méthodologie présentée dans cette thèse ne repose par sur un langage de programmation particulier. Nous montrons comment mettre en oeuvre de tels cadriciels dans un spectre de langages : des langages avec typage statique ou dynamique, et suivant le paradigme objet ou fonctionnel. L’efficacité de l’approche est montrée à travers des prototypes dans le domaine des applications mobiles dans deux langages très différents, à savoir Java et Racket, ce qui montre la généralité de notre approche. / In the domain of open platforms, it has become common to use application programming frameworks extended with declarations that express permissions of applications. This is a natural reaction to ever more widespread adoption of mobile and pervasive computing devices. Their wide adoption raises privacy and safety concerns for users, as a result of the increasing number of sensitive resources a user is sharing with non-certified third-party application developers. However, the approach to designing these declaration languages and the frameworks that enforce their requirements is often ad hoc, and limited to a specific combination of application domain and programming language. Moreover, most widely used frameworks fail to address serious privacy leaks, and, crucially, do not provide the user with insight into application behaviour. This dissertation presents a generalised methodology for developing declaration-driven frameworks in a wide spectrum of host programming languages. We show that rich declaration languages, which express modularity, resource permissions and application control flow, can be compiled into frameworks that provide strong guarantees to end users. Compared to other declaration-driven frameworks, our methodology provides guidance to the application developer based on the specifications, and clear insight to the end user regarding the use of their private resources. Contrary to previous work, the methodology we propose does not depend on a specific host language, or even on a specific programming paradigm. We demonstrate how to implement declaration-driven frameworks in languages with static type systems, completely dynamic languages, object-oriented languages, or functional languages. The efficacy of our approach is shown through prototypes in the domain of mobile computing, implemented in two widely differing host programming languages, demonstrating the generality of our approach.
|
43 |
A Design-Driven Methodology for the Development of Large-Scale Orchestrating Applications / Une methodologie dirigée par la conception pour le developpement d’applications d’orchestration à grande echelleKabac, Milan 26 September 2016 (has links)
Notre environnement est de plus en plus peuplé de grandes quantités d’objets intelligents. Certains surveillent des places de stationnement disponibles, d’autres analysent les conditions matérielles dans les bâtiments ou détectent des niveaux de pollution dangereux dans les villes. Les quantités massives de capteurs et d’actionneurs constituent des infrastructures de grande envergure qui s’étendent sur des terrains de stationnement entiers, des campus comprenant plusieurs bâtiments ou des champs agricoles. Le développement d’applications pour de telles infrastructures reste difficile, malgré des déploiement réussis dans un certain nombre de domaines. Une connaissance considérable des spécificités matériel / réseau de l’infrastructure de capteurs est requise de la part du développeur. Pour remédier à ce problème, des méthodologies et des outils de développement logiciel permettant de relever le niveau d’abstraction doivent être introduits pour que des développeurs non spécialisés puissent programmer les applications. Cette thèse présente une méthodologie dirigée par la conception pour le développement d’applications orchestrant des quantités massives d’objets communicants. La méthodologie est basée sur un langage de conception dédié, nommé DiaSwarm qui fournit des constructions déclaratives de haut niveau permettant aux développeurs de traiter des masses d’objets en phase de conception, avant de programmer l’application. La programmation générative est utilisée pour produire des cadres de programmation spécifiques à la conception pour guider et soutenir le développement d’applications dans ce domaine. La méthodologie intègre le traitement parallèle de grandes quantités de données collectées à partir de masses de capteurs. Nous introduisons un langage de déclarations permettant de générer des cadres de programmation basés sur le modèle de programmation MapReduce. En outre, nous étudions comment la conception peut être utilisée pour rendre explicites les ressources requises par les applications ainsi que leur utilisation. Pour faire correspondre les exigences de l’application à une infrastructure de capteurs cible, nous considérons les déclarations de conception à différents stades du cycle de vie des applications. Le passage à l’échelle de cette approche est évaluée dans une expérience qui montre comment les cadres de programmation générés s’appuyant sur le modèle de programmation MapReduce sont utilisés pour le traitement efficace de grands ensembles de données de relevés des capteurs. Nous examinons l’efficacité de l’approche proposée pour relever les principaux défis du génie logiciel dans ce domaine en mettant en oeuvre des scénarios d’application qui nous sont fournis par des partenaires industriels. Nous avons sollicité des programmeurs professionnels pour évaluer l’utilisabilité de notre approche et présenter des données quantitatives et qualitatives de l’expérience. / Our environment is increasingly populated with large amounts of smart objects. Some monitor free parking spaces, others analyze material conditions in buildings or detect unsafe pollution levels in cities. The massive amounts of sensing and actuation devices constitute large-scale infrastructures that span over entire parking lots, campuses of buildings or agricultural fields. Despite being successfully deployed in a number of domains, the development of applications for such infrastructures remains challenging. Considerable knowledge about the hardware/network specificities of the sensor infrastructure is required on the part of the developer. To address this problem, software development methodologies and tools raising the level of abstraction need to be introduced to allow non-expert developers program applications. This dissertation presents a design-driven methodology for the development of applications orchestrating massive amounts of networked objects. The methodology is based on a domain-specific design language, named DiaSwarm that provides high-level, declarative constructs allowing developers to deal with masses of objects at design time, prior to programming the application. Generative programming is used to produce design-specific programming frameworks to guide and support the development of applications in this domain. The methodology integrates the parallel processing of large-amounts of data collected from masses of sensors. We introduce specific language declarations resulting in the generation of programming frameworks based on the MapReduce programming model. We furthermore investigate how design can be used to make explicit the resources required by applications as well as their usage. To match the application requirements to a target sensor infrastructure, we consider design declarations at different stages of the application lifecycle. The scalability of this approach is evaluated in an experiment, which shows how the generated programming frameworks relying on the MapReduce programming model are used for the efficient processing of large datasets of sensor readings. We examine the effectiveness of the proposed approach in dealing with key software engineering challenges in this domain by implementing application scenarios provided to us by industrial partners. We solicited professional programmers to evaluate the usability of our approach and present quantitative and qualitative data from the experiment.
|
44 |
Pristup modelovanju specifikacija informacionog sistema putem namenskih jezika / An Approach to Modeling Information System Specifications based on Domain Specific LanguagesČeliković Milan 12 July 2018 (has links)
No description available.
|
45 |
Namenski jezik za vizuelizaciju evaluiranu statističkom analizom malih skupova podataka / Domain specific language for visualization evaluated by the statistical analysis of small data setsPetrović Veljko 01 October 2018 (has links)
<p>Za potrebe evaluacije kvaliteta vizuelizacije u svrhu prakse inkluzivnog dizajna razvijen je namenski jezik koji hendikepe vida opisuje kroz formalizam baziran na vizuelnim promenljivama. Namenski jezik se može koristiti kao dokumentacija, ili kao specifikacija hendikepa za posebno napisan simulator vizuelnih hendikepa koji se može koristiti za potrebe testiranja. Kao pandan ovoj tehnologiji razvijen je novi mehanizam za evaluaciju vizuelizacija koji kroz inovacije u metodologiji i statistici omogućava da se merodavni zaključci izvedu iz relativno malih uzoraka podataka.</p> / <p>For purposes of visualization quality evaluation as part of the practice of<br />inclusive design, a domain specific language was developed such that it<br />describes visual handicaps through a formalism based on visual variables.<br />This domain specific language can be used as documentation or as a handicap<br />specification for a specially constructed visual handicap simulator usable for<br />testing. Alongside this technology, a novel mechanism for visualization<br />evalution was developed. This mechanism allows, through innovations in<br />metholodoly and statistics, the production of trustworthy results from relatively<br />small data sets.</p>
|
46 |
Multi-layer syntactical model transformation for model based systems engineeringKwon, Ky-Sang 03 November 2011 (has links)
This dissertation develops a new model transformation approach that supports engineering model integration, which is essential to support contemporary interdisciplinary system design processes. We extend traditional model transformation, which has been primarily used for software engineering, to enable model-based systems engineering (MBSE) so that the model transformation can handle more general engineering models.
We identify two issues that arise when applying the traditional model transformation to general engineering modeling domains. The first is instance data integration: the traditional model transformation theory does not deal with instance data, which is essential for executing engineering models in engineering tools. The second is syntactical inconsistency: various engineering tools represent engineering models in a proprietary syntax. However, the traditional model transformation cannot handle this syntactic diversity.
In order to address these two issues, we propose a new multi-layer syntactical model transformation approach. For the instance integration issue, this approach generates model transformation rules for instance data from the result of a model transformation that is developed for user model integration, which is the normal purpose of traditional model transformation. For the syntactical inconsistency issue, we introduce the concept of the complete meta-model for defining how to represent a model syntactically as well as semantically. Our approach addresses the syntactical inconsistency issue by generating necessary complete meta-models using a special type of model transformation.
|
47 |
Domain-specific language support for experimental game theoryWalkingshaw, Eric 20 December 2011 (has links)
Experimental game theory is the use of game theoretic abstractions—games, players, and strategies—in experiments and simulations. It is often used in cases where traditional, analytical game theory fails or is difficult to apply. This thesis collects three previously published papers that provide domain-specific language (DSL) support for defining and executing these experiments, and for explaining their results.
Despite the widespread use of software in this field, there is a distinct lack of tool support for common tasks like modeling games and running simulations. Instead, most experiments are created from scratch in general-purpose programming languages. We have addressed this problem with Hagl, a DSL embedded in Haskell that allows the concise, declarative definition of games, strategies, and executable experiments. Hagl raises the level of abstraction for experimental game theory, reducing the effort to conduct experiments and freeing experimenters to focus on hard problems in their domain instead of low-level implementation details.
While analytical game theory is most often used as a prescriptive tool, a way to analyze a situation and determine the best course of action, experimental game theory is often applied descriptively to explain why agents interact and behave in a certain way. Often these interactions are complex and surprising. To support this explanatory role, we have designed visual DSL for explaining the interaction of strategies for iterated games. This language is used as a vehicle to introduce the notational quality of traceability and the new paradigm of explanation-oriented programming. / Graduation date: 2012
|
48 |
Using domain specific languages to capture design knowledge for model-based systems engineeringKerzhner, Aleksandr A. 08 April 2009 (has links)
Design synthesis is a fundamental engineering task that involves the creation of structure from a desired functional specification; it involves both creating a system topology as well as sizing the system's components. Although the use of computer tools is common throughout the design process, design synthesis is often a task left to the designer. At the synthesis stage of the design process, designers have an extensive choice of design alternatives that need to be considered and evaluated.
Designers can benefit from computational synthesis methods in the creative phase of the design process. Recent increases in computational power allow automated synthesis methods for rapidly generating a large number of design solutions. Combining an automated synthesis method with an evaluation framework allows for a more thorough exploration of the design space as well as for a reduction of the time and cost needed to design a system. To facilitate computational synthesis, knowledge about feasible system configurations must be captured. Since it is difficult to capture such synthesis knowledge about any possible system, a design domain must be chosen. In this thesis, the design domain is hydraulic systems.
In this thesis, Model-Driven Software Development concepts are leveraged to create a framework to automate the synthesis of hydraulic systems will be presented and demonstrated. This includes the presentation of a domain specific language to describe the function and structure of hydraulic systems as well as a framework for synthesizing hydraulic systems using graph grammars to generate system topologies. Also, a method using graph grammars for generating analysis models from the described structural system representations is presented. This approach fits in the context of Model-Based Systems Engineering where a variety of formal models are used to represent knowledge about a system. It uses the Systems Modeling Language developed by The Object Management Group (OMG SysML™) as a unifying language for model definition.
|
49 |
CALV3 - Uma linguagem espec?fica de dom?nio para seguran?a em sistemas corporativos: um estudo de caso sistem?tico na ind?striaDantas, George Henrique Costa 06 August 2012 (has links)
Made available in DSpace on 2014-12-17T15:48:04Z (GMT). No. of bitstreams: 1
GeorgeHCD_DISSERT.pdf: 1498112 bytes, checksum: 47b708a57a0944475a3489af84029df2 (MD5)
Previous issue date: 2012-08-06 / The academic community and software industry have shown, in recent years,
substantial interest in approaches and technologies related to the area of model-driven
development (MDD). At the same time, continues the relentless pursuit of industry for
technologies to raise productivity and quality in the development of software products. This
work aims to explore those two statements, through an experiment carried by using MDD
technology and evaluation of its use on solving an actual problem under the security context
of enterprise systems. By building and using a tool, a visual DSL denominated CALV3,
inspired by the software factory approach: a synergy between software product line, domainspecific
languages and MDD, we evaluate the gains in abstraction and productivity through a
systematic case study conducted in a development team. The results and lessons learned from
the evaluation of this tool within industry are the main contributions of this work / A comunidade acad?mica e a ind?stria de software t?m demonstrado, nos ?ltimos
anos, bastante interesse em abordagens e tecnologias ligadas ? ?rea de desenvolvimento
dirigido por modelos (MDD). Em paralelo a isto, continua a busca incessante da ind?stria por
tecnologias que aumentem a produtividade e qualidade no desenvolvimento de produtos de
software. Esta pesquisa visa explorar estas duas afirma??es, atrav?s de um trabalho que usa
uma tecnologia MDD e avalia seu uso na resolu??o de um problema real no contexto de
seguran?a de sistemas corporativos. Com a constru??o e uso de uma ferramenta, uma DSL
visual denominada CALV3, inspirada na abordagem de F?bricas de Software: uma sinergia
entre linha de produto de software, linguagens espec?ficas de dom?nio e MDD, avaliamos os
ganhos em abstra??o e produtividade, atrav?s de um estudo de caso sistem?tico conduzido em
uma equipe de desenvolvimento. Os resultados e li??es aprendidas com a avalia??o desta
ferramenta no ?mbito industrial s?o uma das principais contribui??es deste trabalho
|
50 |
Doménově specifické jazyky ve funkcionálním programování / Domain Specific Languages in Functional ProgrammingRapavá, Jana January 2018 (has links)
In Artificial Intelligence, especially in area of constraint programming, it's popular to design various modeling languages which allow solving problems on domain level and by using domain specific abstractions. Techniques known from research on Domain-Specific Languages are often useful in this effort. Functional programming languages offer new tools for designing such languages, particularly Domain-Specific Embedded Languages. This work investigates the advantages and disadvantages of using functional programming for designing and implementing a Domain-Specific Embedded Language for state space search problems.
|
Page generated in 0.0699 seconds