• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to project page

2017 Fiscal Year Research-status Report

Tagless-final DSL embedding: how to keep extending the language and be sure it will still work

Research Project

Project/Area Number 17K00091
Research InstitutionTohoku University

Principal Investigator

Kiselyov Oleg  東北大学, 情報科学研究科, 助教 (50754602)

Project Period (FY) 2017-04-01 – 2020-03-31
KeywordsDSL / domain-specific language / tagless-final / NBE
Outline of Annual Research Achievements

As planned, I have been working on the problem of performing global optimizations on DSLs embedded in the tagless-final style. I have developed the approach of using normalization-by-evaluation~-- rather than term re-writing~-- to transform a program to the normal form. The approach has proved successful. First, I was able to reproduce, in a much simpler way, the previous work in optimizing language-integrated database queries and compiling them to SQL. Mainly, the approach was readily extended to queries that involved ordering and subranging operations. For the first time we have proposed the compositional semantics of these query operations. The developed language-integrated query system is the first that supports ordering and subranging in a portable and consistent way. The results have been published.

I have applied the tagless-final DSL approach to the completely different domain: transforming terms representing natural language sentences into logical formulas. This work is a part of a large project on natural language comprehension. Although it is just the beginning, I have already reported successful results on the first part (generalized quantifiers) of the FraCAS textual entailment corpus. The corresponding paper has been accepted for publication.

There are more applications of the denotational/tagless-final approach, described in further submitted papers.

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

As described in the summary of research achievements, the goals set for the FY 2017 have been achieved and the overall approach seems to be working out.

Strategy for Future Research Activity

In the FY2018, I will work on further applications of the developed approach, to demonstrate its expressive power and that the achieved results are not a fluke. First, I will implement a DSL for generating highest-performance numerical kernels for the general-purpose GPU (GPGPU) programming. The target language is OpenCL. The goal is to reproduce, and hopefully, exceed the performance of the state-of-the-art ``lift'' GPGPU framework, but in a type-safe way. To achieve the highest performance, the DSL should be able to express the GPU memory hierarchy.

Another application is the framework for reasoning about tagless-final DSLs. I will investigate abstract interpretation, and denotational semantics of DSL programs with computational effects such as mutation and non-determinism.

  • Research Products

    (13 results)

All 2018 2017 Other

All Journal Article (3 results) (of which Int'l Joint Research: 3 results,  Peer Reviewed: 3 results,  Open Access: 1 results) Presentation (6 results) (of which Int'l Joint Research: 5 results,  Invited: 2 results) Remarks (4 results)

  • [Journal Article] Transformational Semantics (TS) on a Tree Bank2018

    • Author(s)
      Kiselyov Oleg
    • Journal Title

      Lecture Notes in Computer Science

      Volume: in press Pages: in press

    • Peer Reviewed / Int'l Joint Research
  • [Journal Article] Sound and Efficient Language-Integrated Query2017

    • Author(s)
      Kiselyov Oleg、Katsushima Tatsuya
    • Journal Title

      Lecture Notes in Computer Science

      Volume: 10695 Pages: 364~383

    • DOI

      10.1007/978-3-319-71237-6_18

    • Peer Reviewed / Int'l Joint Research
  • [Journal Article] Higher-order Programming is an Effect2017

    • Author(s)
      Oleg Kiselyov
    • Journal Title

      Informal Proc. HOPE 2017 at ICFP 2017. Oxford, UK, Sep 3, 2017

      Volume: na Pages: online

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Presentation] Systematic Generation of Optimal Code2017

    • Author(s)
      Oleg Kiselyov
    • Organizer
      Tutorial at IFL 2017
    • Int'l Joint Research / Invited
  • [Presentation] Sound and Efficient Language-Integrated Query: Maintaining the ORDER2017

    • Author(s)
      Oleg Kiselyov
    • Organizer
      EPFL, IC Colloquium (EPFL, Lausanne, Switzerland)
    • Invited
  • [Presentation] Higher-order Programming is an Effect2017

    • Author(s)
      Oleg Kiselyov
    • Organizer
      HOPE 2017 at ICFP 2017
    • Int'l Joint Research
  • [Presentation] Effects without monads: non-determinism2017

    • Author(s)
      Oleg Kiselyov
    • Organizer
      ML Family workshop at ICFP 2017
    • Int'l Joint Research
  • [Presentation] Sound and Efficient Language-Integrated Query -- Maintaining the ORDER2017

    • Author(s)
      Oleg Kiselyov
    • Organizer
      APLAS 2017
    • Int'l Joint Research
  • [Presentation] Transformational Semantics (TS) on a Tree Bank2017

    • Author(s)
      Oleg Kiselyov
    • Organizer
      LENLS 14
    • Int'l Joint Research
  • [Remarks] Non-determinism: a sublanguage rather than a monad

    • URL

      http://okmij.org/ftp/tagless-final/nondet-effect.html

  • [Remarks] Typed final (tagless-final) style

    • URL

      http://okmij.org/ftp/tagless-final/index.html

  • [Remarks] Gradually Transforming Syntax to Semantics

    • URL

      http://okmij.org/ftp/gengo/transformational-semantics/index.html

  • [Remarks] Sound and Efficient Language-Integrated Query

    • URL

      http://okmij.org/ftp/meta-programming/index.html#SQUR

URL: 

Published: 2018-12-17  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi