declarative programmatic approaches are an essential modality for data visualization construction. Despite the powerful customization ability, declarative programming requires users to create charts from scratch, thus...
详细信息
ISBN:
(纸本)9781450392365
declarative programmatic approaches are an essential modality for data visualization construction. Despite the powerful customization ability, declarative programming requires users to create charts from scratch, thus building a well-designed visualization is an effort-consuming process. In this paper, we propose leveraging examples to alleviate the problem. The use of examples plays a vital role in visualization design. Users can be allowed to browse through designs for inspiration and adapt them for their own visualizations. In this demo, we directly leverage the entire Vega/Vega-Lite example galleries as chart templates and introduce an authoring pipeline to conveniently instantiate templates with the user's data for extensible programmatic modifications. Finally, we build GALVIS, an example-powered declarative programming tool for visualization construction, enabling efficient declarative programming and retaining the full spectrum of Vega/Vega-Lite characteristics.
This paper discusses an implementation of a declarative style of programming for sensor-based applications, involving the acquisition and aggregation of context. We describe an implementation of LogicCAP integrating P...
详细信息
ISBN:
(纸本)9781424438228
This paper discusses an implementation of a declarative style of programming for sensor-based applications, involving the acquisition and aggregation of context. We describe an implementation of LogicCAP integrating Prolog with the ContextToolkit, and its on-going extensions, considering applications in the mobile environment, distributed evaluation, and dynamic sensor binding issues. We also propose LogicCAP as a declarative language for context (and sensor) mashups with the situation as the aggregating abstraction.
Search is one of the more common strategies used by problem-solving agents. For many hard problems, a backtracking search can be the most effective approach for finding a solution. Logic programming languages provide,...
详细信息
Search is one of the more common strategies used by problem-solving agents. For many hard problems, a backtracking search can be the most effective approach for finding a solution. Logic programming languages provide, as a core feature of the language, the mechanics for the search behind the scenes without requiring the user to specify the algorithm. However, this functionality has been generally left out of the core features of imperative programming languages. In this work, we propose integrating a search agent into an imperative programming language through a search construct in the syntax. By doing so, our intention is that the user may apply a declarative approach to problem solving. We extend the Go programming language with this search construct and develop an agent to perform the search. The algorithm behind the search is implicitly handled by the agent. We demonstrate the effectiveness of this search construct through solutions to an exhaustive search over a file-system, the NQueens problem, and the monkey and the bananas problem. To evaluate the performance of our agent, we compare its runtime performance against two of the common Prolog implementations, SWI-Prolog and GNU Prolog.
Logic programming is a declarative programming paradigm. programming language Prolog makes logic programming possible, at least to a substantial extent. However the Prolog debugger works solely in terms of the operati...
详细信息
ISBN:
(纸本)9783030452599;9783030452605
Logic programming is a declarative programming paradigm. programming language Prolog makes logic programming possible, at least to a substantial extent. However the Prolog debugger works solely in terms of the operational semantics. So it is incompatible with declarative programming. This report discusses this issue and tries to find how the debugger may be used from the declarative point of view. The results are rather not encouraging. Also, the box model of Byrd, used by the debugger, is explained in terms of SLD-resolution.
In this paper, we propose a novel web application development platform using the declarative programming and business process. In the proposed platform, we define the program flow by the business process, which can or...
详细信息
ISBN:
(纸本)9781479941520
In this paper, we propose a novel web application development platform using the declarative programming and business process. In the proposed platform, we define the program flow by the business process, which can organize a program process efficiently and flexibly. Since the design of the user interface (UI) is independent of the business process, the developers can design the UI without considering the business process. Furthermore, a novel declarative programming language is proposed to describe the interactions among the components in the web pages as well as define the communication between the web pages and business process, leading to a simple, efficient, and flexible platform for the web application development. The implementation of the real web application example demonstrates the practical applicability and efficacy of the proposed platform.
programming distributed applications in the IoT-edge environment is a cumbersome challenge. Developers are expected to seamlessly handle issues in dynamic reconfiguration, routing, state management, fault tolerance, a...
详细信息
ISBN:
(纸本)9781450362832
programming distributed applications in the IoT-edge environment is a cumbersome challenge. Developers are expected to seamlessly handle issues in dynamic reconfiguration, routing, state management, fault tolerance, and heterogeneous device capabilities. We introduce DDFlow, a macroprogramming abstraction and accompanying runtime that provides an efficient means to program highquality distributed applications that span a diverse and dynamic IoT network. We describe the programming model and primitives used to isolate application semantics from arbitrary deployment environments. Using DDFlow leads to portable, visualizable, and intuitive applications. The accompanying system runtime enables dynamic scaling and adaptation, leading to improved end-to-end latency while preserving application behavior despite device failures.
Datalog and Answer Set programming (ASP) are powerful languages for rule-based database querying and constraint solving, respectively. Similarly, Python is a popular and powerful procedural programming language with a...
详细信息
Datalog and Answer Set programming (ASP) are powerful languages for rule-based database querying and constraint solving, respectively. Similarly, Python is a popular and powerful procedural programming language with applications in many domains including data science. I have developed a problem solving framework called "Possible Worlds Exploration" which is based on combining the two programming paradigms to enable new exploration and problem solving capabilities for a wide audience of users. The primary component of this framework is the Possible Worlds Explorer (PWE), an open source Python-based toolkit that employs Jupyter Notebooks to make working with Datalog and ASP systems easier and more productive. PWE can parse output from different ASP reasoners (Clingo and DLV) and then run analytical queries over all answer sets or "possible worlds" (PWs), e.g., to calculate relative frequencies of atoms across PWs or to hierarchically cluster PWs based on user-defined complexity and similarity measures. PWE also has support for the three-valued well-founded semantics of Datalog programs (via DLV) and temporal models that use a special state argument. Using simple Python functions, generic as well as user-definable presentation and visualization formats can be easily created, e.g., to display all PWs (world views), the unique three-valued well founded model (partial views), and temporal models (timelines and time series). We have illustrated several examples, both theoretical and application-based, to showcase the abilities of PWE. We provide containerized versions of PWE that can be run in the cloud or locally. In this way the Possible Worlds Explorer makes Datalog and ASP more accessible for a wider audience.
We describe here an implemented small programming language, called Alma-O, that augments the expressive power of imperative programming by a limited number of features inspired by the logic programming paradigm. These...
详细信息
We describe here an implemented small programming language, called Alma-O, that augments the expressive power of imperative programming by a limited number of features inspired by the logic programming paradigm. These additions encourage declarative programming and make it a more attractive vehicle for problems that involve search. We illustrate the use of Alma-O by presenting solutions to a number of classical problems, including α-β search, STRIPS planning, knapsack, and Eight Queens. These solutions are substantially simpler than their counterparts written in the imperative or in the logic programming style and can be used for different purposes without any modification. We also discuss here the implementation of Alma-O and an operational, executable, semantics of a large subset of the language.
The article offers information on graphical user interface (GUI) designer tools for Windows computer programs and provides an overview on how to effectively design a GUI. The author reveals that special GUI designer t...
详细信息
The article offers information on graphical user interface (GUI) designer tools for Windows computer programs and provides an overview on how to effectively design a GUI. The author reveals that special GUI designer tools help programmers ease the complexity of defining an application's exact layout while handling the user's actions. He states that GUIs let developers acquire application forms, menus, dialog boxes and other interface elements and interpret the models, which includes placeholders where developers place event-handling code, to the code that constructs them. In addition, the author evaluates Microsoft Corp.'s declarative GUI program called Extensible Application Markup Language (XAML), a declarative XML-based language used to initialize structured values and objects .
暂无评论