no code implementations • 30 Aug 2021 • Yuki Nishida, Hiromasa Saito, Ran Chen, Akira Kawata, Jun Furuse, Kohei Suenaga, Atsushi Igarashi
Due to the large amount of money that smart contracts deal with, there is a surging demand for a method that can statically and formally verify them.
1 code implementation • 18 Mar 2020 • Taro Sekiyama, Takeshi Tsukada, Atsushi Igarashi
We propose signature restriction, a new notion to restrict the type signatures of operations, and show that signature restriction is sufficient to ensure type safety of an effectful language equipped with unrestricted polymorphic type assignment.
Programming Languages
no code implementations • 18 Oct 2019 • Taro Sekiyama, Atsushi Igarashi
Key ingredients in this work are the dynamic row type, which represents a statically unknown part of a row, and consistency for row types, which allows injecting static row types into the dynamic row type and, conversely, projecting the dynamic row type to any static row type.
Programming Languages
no code implementations • 7 Aug 2019 • Yuya Tsuda, Atsushi Igarashi, Tomoya Tabuchi
In this paper, we study coercion-passing style, which Herman et al. have already mentioned, as a technique for straightforward space-efficient implementation of gradually typed languages.
Programming Languages
1 code implementation • 6 Aug 2019 • Akira Kawata, Atsushi Igarashi
We study a dependently typed extension of a multi-stage programming language \`a la MetaOCaml, which supports quasi-quotation and cross-stage persistence for manipulation of code fragments as first-class values and an evaluation construct for execution of programs dynamically generated by this code manipulation.
Programming Languages
no code implementations • 18 Nov 2018 • Taro Sekiyama, Atsushi Igarashi
Algebraic effects and handlers are a powerful abstraction mechanism to represent and implement control effects.
Programming Languages
1 code implementation • 30 Oct 2018 • Yusuke Miyazaki, Taro Sekiyama, Atsushi Igarashi
The DTI-based semantics not only avoids the divergence described above but also is sound and complete with respect to the semantics of fully instantiated terms in the following sense: if the evaluation of a term succeeds (i. e., terminates with a value) in the DTI-based semantics, then there is a fully instantiated version of the term that also succeeds in the explicitly typed blame calculus and vice versa.
Programming Languages Logic in Computer Science
1 code implementation • 15 Sep 2018 • Atsushi Igarashi, Peter Thiemann, Yuya Tsuda, Vasco T. Vasconcelos, Philip Wadler
We propose Gradual GV as a gradually typed extension of the functional session type system GV.
Programming Languages