• [^] # Re: type

    Posté par (site web personnel) . En réponse au journal [Letlang] Écrire un compilateur en Rust (partie 3). Évalué à 3.

    Est-ce que cela répond à la problématique ?

    Oui. En gros, on peut mettre des littéraux dans une définition, et l'on peut définir le type d'un champ plus tard.

    Tu veux quelque chose de similaire à Boundary en Elixir. C'est aussi dans mon radar mais pour bien plus tard.

    Oui, en gros, c'est ça. Si tu définit une architecture hexagonal, par exemple, comment faire pour le déclarer dans le code pour éviter que des refactorisation ne casse accidentellement l'architecture. Typiquement, tu veux éviter l'introduction de certaine dépendance, que des modules feuilles restent des feuilles, etc...

    D'ailleurs, est-ce que tu as déjà codé et tester le "&" et le "non" dans ton typage ? J'ai écris un début de truc semblable qui mélange type et validité, et le "non" me pose un gros problème de définition. Si cela t'intéresse je pourrais retrouver le cas.

    C'est l'outil coherentyaml ( https://github.com/nicolasboulay/coherentyaml ). Il faudrait que je le termine d'ailleurs.

    "La première sécurité est la liberté"