Questions marquées «pl.programming-languages»

Langages de programmation, en particulier, centrés sur leur sémantique.


3
Lecteur, écrivain monades
Soit CCC un CCC . Soit (×)(×)(\times) être un bifoncteur produit sur CCC . Comme Cat est CCC, nous pouvons curry (×)(×)(\times) : curry(×):C→(C⇒C)curry(×):C→(C⇒C)curry (\times) : C \rightarrow(C \Rightarrow C) curry(×)A=λB.A×Bcurry(×)A=λB.A×Bcurry (\times) A = \lambda B. A \times B Catégorie de foncteurs C⇒CC⇒CC \Rightarrow C a une structure monoïdale habituelle. …




3
Quel est le rôle de la prédicativité dans les définitions inductives dans la théorie des types?
Nous voulons souvent définir un objet selon certaines règles d'inférence. Ces règles désignent une fonction génératrice qui, lorsqu'elle est monotone, donne un point moins fixe . Nous prenons pour être la "définition inductive" de . De plus, la monotonie de nous permet de raisonner avec le "principe d'induction" pour déterminer …

3
Existe-t-il une théorie du langage de programmation décrivant les interfaces de fonctions étrangères (FFI) et les liaisons de plusieurs langages?
Existe-t-il une théorie du langage de programmation décrivant les interfaces de fonctions étrangères (FFI) et les liaisons de plusieurs langages? J'ai posé quelques problèmes d'implémentation sur stackoverflow , qui ne convient pas ici. Mais je voudrais demander du point de vue de ce site et voir ce que je pourrais …


2
Intégralité totale vs Abstraction complète d'une traduction de programme
Les efforts de vérification du compilateur se résument souvent à prouver que le compilateur est complètement abstrait: qu'il préserve et reflète les équivalences (contextuelles). Au lieu de fournir des preuves d'abstraction complètes, certains travaux récents de vérification du compilateur (basés sur des catégories) par Hasegawa [ 1 , 2 ] …

1
Les types récursifs MALL + sans restriction sont-ils Turing-complete?
Si vous regardez les combinateurs récursifs dans le lambda-calcul non typé, tels que le combinateur Y ou le combinateur oméga: Il est clair que tous ces combinateurs finissent par dupliquer une variable quelque part dans leur définition.ωOui==(λx.xX)( λx.xx )λf.( λ x.F(xx ))( λ x.F(xx ) )ω=(λX.XX)(λX.XX)Oui=λF.(λX.F(XX))(λX.F(XX)) \begin{array}{lcl} \omega & = …





1
Maintenir l'ordre dans une liste en
Le problème de maintenance des commandes (ou «maintien de l'ordre dans une liste») est de supporter les opérations: singleton: crée une liste avec un élément, lui renvoie un pointeur insertAfter: donné un pointeur sur un élément, insère un nouvel élément après, renvoyant un pointeur sur le nouvel élément delete: donne …

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.