04-02-2020, 01:27 PM
Citation :Mais au fait tu sais pour Kraft, on peut faire un langage turing-complet avec uniquement du pattern matching
Mais ça ne servirait pas à grand chose. J'aime bien créer un langage mais uniquement s'il peut apporter quelque chose d'intéressant !
Citation : j'ai jamais trop compris le principe d'implémentation du backtracking
En soi c'est pas compliqué : à chaque étape de ton match, tu crées un nouvel état, et tant que ça marche tu continues. Si ça fail, tu annules uniquement la dernière étape et tu testes autre chose. L'idée est d'annuler une seule étape et de remonter d'un seul cran à la fois. Pour ça le plus simple c'est d'utiliser des données immutables et de les copier à chaque fois. (mais c'est pas optimisé)