Language-agnostic integrated queries in a managed polyglot runtime

2021 ◽  
Vol 14 (8) ◽  
pp. 1414-1426
Author(s):  
Filippo Schiavio ◽  
Daniele Bonetta ◽  
Walter Binder

Language-integrated query (LINQ) frameworks offer a convenient programming abstraction for processing in-memory collections of data, allowing developers to concisely express declarative queries using general-purpose programming languages. Existing LINQ frameworks rely on the well-defined type system of statically-typed languages such as C # or Java to perform query compilation and execution. As a consequence of this design, they do not support dynamic languages such as Python, R, or JavaScript. Such languages are however very popular among data scientists, who would certainly benefit from LINQ frameworks in data analytics applications. In this work we bridge the gap between dynamic languages and LINQ frameworks. We introduce DynQ, a novel query engine designed for dynamic languages. DynQ is language-agnostic, since it is able to execute SQL queries in a polyglot language runtime. Moreover, DynQ can execute queries combining data from multiple sources, namely in-memory object collections as well as on-file data and external database systems. Our evaluation of DynQ shows performance comparable with equivalent hand-optimized code, and in line with common data-processing libraries and embedded databases, making DynQ an appealing query engine for standalone analytics applications and for data-intensive server-side workloads.

2006 ◽  
Vol 16 (6) ◽  
pp. 793-811 ◽  
Author(s):  
ALEX POTANIN ◽  
JAMES NOBLE ◽  
DAVE CLARKE ◽  
ROBERT BIDDLE

Existing approaches to object encapsulation either rely on ad hoc syntactic restrictions or require the use of specialised type systems. Syntactic restrictions are difficult to scale and to prove correct, while specialised type systems require extensive changes to programming languages. We demonstrate that confinement can be enforced cheaply in Featherweight Generic Java, with no essential change to the underlying language or type system. This result demonstrates that polymorphic type parameters can simultaneously act as ownership parameters and should facilitate the adoption of confinement and ownership type systems in general-purpose programming languages.


Author(s):  
Lubna Irshad ◽  
Zongmin Ma ◽  
Li Yan

The World Wide Web is a bunch of interlinked documents full of information and knowledge where people search sources to interpret relevant information. As the modern web is becoming more interactive and data-centric, it is necessary to focus on how to exchange data efficiently, easily, and quickly. There are several ways to exchange data among web services like XML and JSON. JSON is one of its kind of emerging data-interchange format. Its data model maps the type system of many programming languages is recommended for web development, especially Java scripting language. Previously, JSON was the focus by NoSQL community, but presently, the relational database community also claims to manage both relational and JSON data in one platform efficiently. This chapter focuses on various approaches to use JSON stores with NoSQL and relational database systems. The study reveals work accomplished so far to identify the working of JSON Stores as NoSQL stores and role relational system plays to enhance the power of JSON stores.


Author(s):  
CUI ZHANG ◽  
RICHARD F. WALTERS

Neither today’s general purpose programming environment nor high-level programming languages, including those designed for AI purposes, provide adequate support for database systems. Furthermore, non-English language databases are difficult to treat either in existing database systems or with current high-level languages, because they require culture-sensitive operations on multiple foreign character sets. In this paper, we present an abstract, shared and persistent data structure, called HL+, capable of supporting database management applications. We also describe the means for coping with the aforementioned problems by accessing HL+ features of database management from high-level programming languages with an extensible programmable high-level language interface. Extensions to the data structure to accommodate processing of multiple foreign character strings are also described, and examples of multilingual applications are given.


2020 ◽  
Vol 2020 ◽  
pp. 1-15
Author(s):  
Zheng Yang ◽  
Hang Lei

The security of blockchain smart contracts is one of the most emerging issues of the greatest interest for researchers. This article presents an intermediate specification language for the formal verification of Ethereum-based smart contract in Coq, denoted as Lolisa. The formal syntax and semantics of Lolisa contain a large subset of the Solidity programming language developed for the Ethereum blockchain platform. To enhance type safety, the formal syntax of Lolisa adopts a stronger static type system than Solidity. In addition, Lolisa includes a large subset of Solidity syntax components as well as general-purpose programming language features. Therefore, Solidity programs can be directly translated into Lolisa with line-by-line correspondence. Lolisa is inherently generalizable and can be extended to express other programming languages. Finally, the syntax and semantics of Lolisa have been encapsulated as an interpreter in mathematical tool Coq. Hence, smart contracts written in Lolisa can be symbolically executed and verified in Coq.


2017 ◽  
Vol 23 (2) ◽  
pp. 366-375 ◽  
Author(s):  
Jonathan M. Hyde ◽  
Gérald DaCosta ◽  
Constantinos Hatzoglou ◽  
Hannah Weekes ◽  
Bertrand Radiguet ◽  
...  

AbstractIrradiation of reactor pressure vessel (RPV) steels causes the formation of nanoscale microstructural features (termed radiation damage), which affect the mechanical properties of the vessel. A key tool for characterizing these nanoscale features is atom probe tomography (APT), due to its high spatial resolution and the ability to identify different chemical species in three dimensions. Microstructural observations using APT can underpin development of a mechanistic understanding of defect formation. However, with atom probe analyses there are currently multiple methods for analyzing the data. This can result in inconsistencies between results obtained from different researchers and unnecessary scatter when combining data from multiple sources. This makes interpretation of results more complex and calibration of radiation damage models challenging. In this work simulations of a range of different microstructures are used to directly compare different cluster analysis algorithms and identify their strengths and weaknesses.


2021 ◽  
Vol 31 ◽  
Author(s):  
BHARGAV SHIVKUMAR ◽  
JEFFREY MURPHY ◽  
LUKASZ ZIAREK

Abstract There is a growing interest in leveraging functional programming languages in real-time and embedded contexts. Functional languages are appealing as many are strictly typed, amenable to formal methods, have limited mutation, and have simple but powerful concurrency control mechanisms. Although there have been many recent proposals for specialized domain-specific languages for embedded and real-time systems, there has been relatively little progress on adapting more general purpose functional languages for programming embedded and real-time systems. In this paper, we present our current work on leveraging Standard ML (SML) in the embedded and real-time domains. Specifically, we detail our experiences in modifying MLton, a whole-program optimizing compiler for SML, for use in such contexts. We focus primarily on the language runtime, reworking the threading subsystem, object model, and garbage collector. We provide preliminary results over a radar-based aircraft collision detector ported to SML.


Author(s):  
José Ángel Labbad ◽  
Ricardo R. Monascal ◽  
Leonid Tineo

Traditional database systems and languages are very rigid. XML data and query languages are not the exception. Fuzzy set theory is an appropriate tool for solving this problem. In this sense, Fuzzy XQuery was proposed as an extension of the XQUERY standard. This language defines the xs:truth datatype, the xml:truth attribute and allows the definition and use of fuzzy terms in queries. The main goal of this chapter is to show a high coupling implementation of Fuzzy XQuery within eXist-db, an open source XML DBMS. This extension strategy could also be used with other similar tools. This chapter also presents a statistical performance analysis of the extended fuzzy query engine using the XMark benchmark with user defined fuzzy terms. The study presents promising results.


Sign in / Sign up

Export Citation Format

Share Document