De nombreux langages de programmation fonctionnels prennent en charge curried parameters. Pour prendre en charge les fonctions de correction, les paramètres de la fonction sont essentiellement un tuple dans lequel le dernier paramètre peut être omis pour créer une nouvelle fonction nécessitant un tuple plus petit.Existe-t-il un langage de programmation qui exécute des erreurs lorsque les paramètres nommés sont omis?
Je pense à concevoir un langage qui utilise toujours des enregistrements (aka named parameters) pour les paramètres de fonction.
Ainsi les fonctions mathématiques simples dans mon Imaginaire langue serait:
add { left : num, right : num } = ...
minus { left : num, right : num } = ..
Vous pouvez passer dans tout dossier à ces fonctions tant qu'ils ont ces deux paramètres nommés (ils peuvent avoir plus juste « gauche » et "juste").
Si elles ont un seul paramètre nommé, il crée une nouvelle fonction:
minus5 :: { left : num } -> num
minus5 = minus { right : 5 }
J'emprunte une partie de la notation de haskell pour ci-dessus.
Est-ce que quelqu'un a vu une langue qui fait cela?
@Ken Bloom Je peux voir comment utiliser le terme « partiel Fonction Completion "est ambigu. En fait, je voulais dire «application partielle» et avait une sorte de dissonance cognitive et utilisé le terme susmentionné. Merci d'avoir corrigé cela. –