11 research outputs found

    Semantic Deltas for Live DSL Environments

    Get PDF
    Domain-specific languages (DSLs) require IDE support, just like ordinary programming languages. This paper introduces semantic deltas as a foundation for building live DSL environments to bridge the "gulf of evaluation" between DSL code and the running application. Semantic deltas are distinguished from textual or structural deltas in two ways. First, they have meaning in the application domain captured by the DSL. Second, they can be interpreted at runtime so that the behavior of the running system adapts to the evolved DSL code. Semantic deltas have the potential to support back-in-time debugging, application state persistence, version control, retroactive updates and exploring what-if scenarios. I present early experiences in building a live DSL environment and identify areas for future research

    Semantic Deltas for Live DSL Environments

    Get PDF
    Domain-specific languages (DSLs) require IDE support, just like ordinary programming languages. This paper introduces semantic deltas as a foundation for building live DSL environments to bridge the "gulf of evaluation" between DSL code and the running application. Semantic deltas are distinguished from textual or structural deltas in two ways. First, they have meaning in the application domain captured by the DSL. Second, they can be interpreted at runtime so that the behavior of the running system adapts to the evolved DSL code. Semantic deltas have the potential to support back-in-time debugging, application state persistence, version control, retroactive updates and exploring what-if scenarios. I present early experiences in building a live DSL environment and identify areas for future research

    Adapting Queries to Database Schema Changes in Hybrid Polystores

    Get PDF

    Transformation of structure-shy programs with application to XPath queries and strategic functions

    Get PDF
    Various programming languages allow the construction of structure-shy programs. Such programs are defined generically for many different datatypes and only specify specific behavior for a few relevant subtypes. Typical examples are XML query languages that allow selection of subdocuments without exhaustively specifying intermediate element tags. Other examples are languages and libraries for polytypic or strategic functional programming and for adaptive object-oriented programming. In this paper, we present an algebraic approach to transformation of declarative structure-shy programs, in particular for strategic functions and XML queries. We formulate a rich set of algebraic laws, not just for transformation of structure-shy programs, but also for their conversion into structure-sensitive programs and vice versa. We show how subsets of these laws can be used to construct effective rewrite systems for specialization, generalization, and optimization of structure-shy programs. We present a type-safe encoding of these rewrite systems in Haskell which itself uses strategic functional programming techniques. We discuss the application of these rewrite systems for XPath query optimization and for query migration in the context of schema evolution

    ΠžΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ зависимости Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ с Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ значСниями Π² Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

    Get PDF
    The paper discusses a new type of dependency in databases, which is a generalization of inclusion dependencies. Traditionally, such dependencies are used in practice to ensure referential integrity. In this case, the restriction is established only between a pair of relations, the first of which is called the main, the second is external. In practice, referential integrity often needs to be established for a larger number of relations, where several main and several external relations participate in the same constraint. Such a structure corresponds to an ultragraph. The paper provides a rationale for generalized inclusion dependencies that take into account the presence of null values in external relations. Based on the study of the properties of typed dependencies, a system of axioms is obtained, for which consistency (soundness) and completeness are proved.Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ рассматриваСтся Π½ΠΎΠ²Ρ‹ΠΉ Π²ΠΈΠ΄ зависимостСй Π² Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ΠΌ зависимостСй Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ Ρ‚Π°ΠΊΠΈΠ΅ зависимости Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для обСспСчСния ссылочной цСлостности. ΠŸΡ€ΠΈ этом, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ устанавливаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°Ρ€ΠΎΠΉ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ, ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… называСтся Π³Π»Π°Π²Π½Ρ‹ΠΌ, Π²Ρ‚ΠΎΡ€ΠΎΠ΅ β€” внСшним. На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΡΡΡ‹Π»ΠΎΡ‡Π½ΡƒΡŽ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ часто трСбуСтся ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ для большСго числа ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ, Π³Π΄Π΅ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΈ ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ нСсколько Π³Π»Π°Π²Π½Ρ‹Ρ… ΠΈ нСсколько ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ. Вакая структура соотвСтствуСт ΡƒΠ»ΡŒΡ‚Ρ€Π°Π³Ρ€Π°Ρ„Ρƒ. Π’ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ обоснованиС ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Ρ… зависимостСй Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π²ΠΎ Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡΡ…. На основС исслСдования свойств Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… зависимостСй ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π° систСма аксиом, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄ΠΎΠΊΠ°Π·Π°Π½Π° Π½Π΅ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ (Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ) ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Π°

    Анализ Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… зависимостСй Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ с Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ значСниями

    Get PDF
    Null values have become an urgent problem since the creation of the relational dataΒ model. The impact of the uncertainty affects all types of dependencies used in the design and operationΒ of the database. This fully applies to the inclusion dependencies, which are the theoretical basis forΒ referential integrity on the data. Attempts to solve this problem contain inaccuracy in the statementΒ of the problem and its solution. The errors in formulation of the problem can be associated with theΒ use in the definition of untyped inclusion dependencies, which leads to permutations of the attributes,Β although, the attributes in database technology are identified by name and not by their place. In addition, linking with the use of the inclusion dependencies of heterogeneous attributes, even of the same type, is a sign of lost functional dependencies and leads to interaction of inclusion dependencies and non-trivial functional dependencies. Inaccuracies in the solution of the problem are contained in the statements of axioms and the proof of their properties, including completeness. In this paper we propose an original solution of this problem only for typed inclusion dependencies in the presence of Null values: a new axiom system is proposed, its completeness and soundness are proved. On the basis of inference rules we developed an algorithm for the construction of a not surplus set of typed inclusion dependencies. The correctness of the algorithm is proved.НСопрСдСлСнныС значСния стали Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° создания рСляционной ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. ВлияниС нСопрСдСлСнностСй сказываСтся Π½Π° всСх Π²ΠΈΠ΄Π°Ρ… зависимостСй,Β ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ эксплуатации Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Π’ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ это относится ΠΈΒ ΠΊ зависимостям Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ тСорСтичСской основой ссылочной цСлостности Π½Π°Β Π΄Π°Π½Π½Ρ‹Π΅. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ содСрТат нСточности ΠΊΠ°ΠΊ Π² постановкС Π·Π°Π΄Π°Ρ‡ΠΈ,Β Ρ‚Π°ΠΊ ΠΈ Π² самом Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ. К постановочным ошибкам ΠΌΠΎΠΆΠ½ΠΎ отнСсти использованиС Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π½Π΅Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… зависимостСй Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ пСрСстановкам Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ², хотя в тСхнологиях Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ, Π° Π½Π΅ ΠΏΠΎ ΠΈΡ… ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, связываниС Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒΡŽ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ…, ΠΏΡƒΡΡ‚ΡŒ Π΄Π°ΠΆΠ΅ ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ…, Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² являСтся признаком потСрянной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ зависимости ΠΈ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… зависимостСй Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… зависимостСй. Зависимости Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ‹Β ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ количСствСнноС соотнСсСниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ, Π° Π½Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ². НСточности Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ содСрТатся Π² Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠ°Ρ… аксиом ΠΈ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π΅ их свойств, Π² Ρ‚ΠΎΠΌ числС ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ прСдлагаСтся ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… зависимостСй Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:Β ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° систСма аксиом, Π΄ΠΎΠΊΠ°Π·Π°Π½Π° Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎΡ‚Π° ΠΈ Π½Π΅ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ. На основС ΠΏΡ€Π°Π²ΠΈΠ» Π²Ρ‹Π²ΠΎΠ΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ построСния Π½Π΅ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ мноТСства Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚Π΅ΠΉΒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π”ΠΎΠΊΠ°Π·Π°Π½Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ этого Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°
    corecore