• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Retrofitting Implicit Modules for 1ML

Student: Trilis Aleksei

Supervisor: Boris Novikov

Faculty: St. Petersburg School of Physics, Mathematics, and Computer Science

Educational Programme: Applied Mathematics and Information Science (Bachelor)

Year of Graduation: 2021

The lack of ad hoc polymorphism in languages of the ML family can be considered a significant problem. The goal of this work is to extend the experimental language 1ML with ad hoc polymorphism using implicit modules. 1ML is distinguished by a minimal and uniform approach to the ML module system and the absence of dependent types. These features greatly simplify some of the problems that arise when developing ad hoc polymorphism. Our solution is based on the prototype of White et al. for the OCaml language and is more complete compared to it. This work supports implicit arguments for functors, which were not supported in previous literature on ML. Also, we present an algorithm that efficiently finds the correct order to resolve implicit modules. Keywords: implicit parameters, implicit modules, type classes, ML modules, OCaml, 1ML.

Student Theses at HSE must be completed in accordance with the University Rules and regulations specified by each educational programme.

Summaries of all theses must be published and made freely available on the HSE website.

The full text of a thesis can be published in open access on the HSE website only if the authoring student (copyright holder) agrees, or, if the thesis was written by a team of students, if all the co-authors (copyright holders) agree. After a thesis is published on the HSE website, it obtains the status of an online publication.

Student theses are objects of copyright and their use is subject to limitations in accordance with the Russian Federation’s law on intellectual property.

In the event that a thesis is quoted or otherwise used, reference to the author’s name and the source of quotation is required.

Search all student theses