@MartinShadok En fait je me suis trompé sur la représentation des clôtures : c'est un bloc contenant un pointeur de code, suivi de toutes les variables libres de l'expression étant exécutée.
github.com/ocaml/ocaml/blob/68 pour le fait que seules les variables libres sont dans l'environnement.

@MartinShadok Ma compréhension (possiblement incorrecte de la chose) c'est la suivante :
1/ on remplace toutes les fonctions internes (anonymes ou non) par des fonctions globales qui prennent en argument un environnement pour leurs variables libres
2/ un pointeur sur une fonction contient un pointeur vers le code + un pointeur vers l'environnement, si celui-ci n'a besoin de contenir aucune variable livre, il ne coûtera rien au GC.

@MartinShadok Si tu stockes des fonctions qui ne sont pas des clôtures (dans le sens, toutes les valeurs d'environnement nécessaires sont des valeurs globales ou des fonctions qui ne sont pas des clôtures), alors le coût de stocker la fonction se réduira en un pointeur de code et l'environnement global, je pense. Ça ne se comporte effectivement pas parfaitement avec le marshalling, mais pour cela tu peux ajouter une fonction de serialisation dans ton record.

@MartinShadok Les espaces dans les chaînes de caractères sont ignorés en faisant ça, non ? (et quelque chose comme "\w" risque de générer la chaîne de caractères " w"). Peut-être qu'avoir un moyen de changer le tokenizer selon le contexte pourrait aider à faire des chaînes de caractères plus naturelles ?
En tout cas, j'aime beaucoup l'idée du projet !

@MartinShadok Cela se produit quand le compilateur voit que tu appliques une fonction de type 'a. Juste avoir une annotation de type (f : 'a -> 'b) suffit pour éviter le warning, normalement.

@MartinShadok Je pense que c'est qu'on prend en compte le jour courant quand on parle d'intervalles, mais seulement quand on parle de 8 ou 15 jours... Je n'ai pas l'impression que ça soit bien défini.

@MartinShadok J'ai répondu 168 heures, mais je vais détailler un peu ma réponse : pour moi, « huit jours » veut dire une semaine seulement dans certains contextes, comme dans « dans huit jours ». Par contre, si on dit « Ceci m'a pris huit jours », là c'est bien une semaine et un jour.

@MartinShadok Qu'est-ce que tu appelles un sous-terme du terme affiché ?

@MartinShadok @lthms Ça peut être que quelque chose caché dans une variable implicite n'unifie pas correctement (par exemple, [nil] qui n'unifie pas avec [nil] si le premier est en fait [@nil A] et le deuxième [@nil B]). Tu peux essayer [Set Printing All.] pour voir si l'erreur se voit dans ce cas.

Recherche d'algorithme 

@MartinShadok Si les matrices de coût sont symétriques, le résultat n'est-il pas indépendant de la permutation choisie ?

On peut aussi réécrire ce qu'on cherche comme \sum_{0 <= i <= j < N} C[q(i), q(j)], où q = p^{-1}, si jamais ça peut aider.

"Testing OCaml releases with opamcheck"

New blog post on Gagallium by Florian Angeletti!

gallium.inria.fr/blog/an-ocaml

Lycée du Parc, conférence de Judicaël Courant, « Une brève histoire des langages de programmation ». tube.ac-lyon.fr/videos/watch/2

@MartinShadok Unfortunately, I thinks this needs to be done on a case-by-base basis. Indeed, it is possible to extend some already-existing "<" relation (for instance) by adding a constructor of type "17 < 42". Then, there are two terms of type "17 < 42": the above one, and the way that already existed, so they are not equal.

I am horrified and amazed at the same time by this work of art (you probably need a computer to play this): matthewrayfield.com/goodies/in

The Deadlock Empire

Slay dragons, learn concurrency! Play the cunning Scheduler, exploit flawed programs and defeat the armies of the Parallel Wizard.

deadlockempire.github.io/

@MartinShadok I think AoE is actually UTC-12, so it shouldn't have pushed the deadlines: these would change if some country changed to UTC-13 or UTC-14.

Déplier
Framapiaf

Le réseau social de l'avenir : Pas d'annonces, pas de surveillance institutionnelle, conception éthique et décentralisation ! Possédez vos données avec Mastodon !