研究実績の概要 |
I have published the monograph: ``Reconciling Abstraction with High Performance: A MetaOCaml approach. nowpublishers, Foundations and Trends® in Programming Languages Series ISBN: 978-1-68083-436-9. 1-112 pp., 2018. https://www.amazon.co.jp/Reconciling-Abstraction-High-Performance-Foundations/dp/1680834363'' which presents tagless-final, in combination with staging, as the main method for optimizing and compiling Domain-Specific Languages (DSLs).
As planned, I, together with the Master Student whom I advised, implemented a DSL for generating high-performance numerical kernels for the general-purpose GPU (GPGPU) programming. The target language is OpenCL. That DSL and the tagless-final implementation method was the topic of the student's master thesis, which he successfully defended in February 2019.
Also as planned, I have worked on the reasoning about tagless-final DSLs. I have investigated abstract interpretation, and denotational semantics of DSL programs with computational effects such as mutation and non-determinism. The result are two journal papers submitted to publication (one is to be published shortly) -- plus another (Eff Directly in OCaml) that is published already.
|
今後の研究の推進方策 |
In the FY2019, I will continue working on the second main project specified in the kakenhi proposal: using tagless-final to embed Logical-framework-like DSL for specifying typed calculi, for prototyping of functional languages and their type systems and natural language semantic theories. A (now second-year) master student whom I advise is working with me on using tagless-final to implement DSL for describing derivations in AB grammars, Lambek grammars, and Kubota and Levin's Hybrid Type-Logical grammars. The goal is not just checking that derivations are well-formed, but also to format them as LaTeX figures according to the common theoretical-linguistic conventions.
As part of disseminating research results and making them more accessible and applicable, I plan to expand the published conference papers to full journal papers: further developing their results, carrying out the immediate future work and adding more detailed explanation and exposition.
|