Isomorphisms are back! - Archive ouverte HAL
Communication Dans Un Congrès Année : 2021

Isomorphisms are back!

Résumé

Sometimes, we need a function so deeply that we have to go out and search for it. How do we find it ? Sometimes, we have clues: a function which manipulates list is probably in the Listmodule. . . but not always! Sometimes, all we have is its functionality: doing the sum of a list of integers. Unfortunately, search by functionality is difficult. Rittri [1] proposed an approximation: use the type of the function as a key to search through libraries: in our case, int list->int. To avoid stumbling over details such as the order of arguments, he proposed to use matching modulo type isomorphism – a notion broader than syntactic equality. Unfortunately, algorithms for unification modulo type isomorphisms are extremely costly. Doing an exhaustive search over the whole ML ecosystem was possible at the time (with a standard library of 294 functions), but is certainly not possible anymore for the OCaml ecosystem, with 3259 opam packages, each containing several hundreds or thousands of functions.
Fichier principal
Vignette du fichier
mlworkshop.pdf (114.81 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03355381 , version 1 (27-09-2021)

Identifiants

  • HAL Id : hal-03355381 , version 1

Citer

Clément Allain, Gabriel Radanne, Laure Gonnord. Isomorphisms are back!. ML 2021 - ML Workshop, Aug 2021, Virtual, France. pp.1-3. ⟨hal-03355381⟩
253 Consultations
142 Téléchargements

Partager

More