Alors je ne compile pas, j'interprète ! Une fois en Go, toutes les autres fois en Javascript. Sans compter le jeu Squadbot en Turbo Pascal 6, on pouvait programmer les petits vaisseaux spatiaux avec un éditeur intégré.
Ce qui n'est pas facile, c'est d'interpréter en se gardant la possibilité d'interrompre à tout moment l'exécution, et sans utiliser la récursion dans l'interpréteur.
Mais au fait tu sais pour Kraft, on peut faire un langage turing-complet avec uniquement du pattern matching, il y a Thue par exemple !
Cela dit, moué. Le pattern matching à la Elixir, je crois que c'est trop gros pour moi. Ca sent la chasse au T-Rex avec une sarbacane. :'(
Il y a plusieurs implémentations de mini-kanren en Javascript, mais j'ai jamais trop compris le principe d'implémentation du backtracking. Petit cerveau, trop de données.
Ce qui n'est pas facile, c'est d'interpréter en se gardant la possibilité d'interrompre à tout moment l'exécution, et sans utiliser la récursion dans l'interpréteur.
Mais au fait tu sais pour Kraft, on peut faire un langage turing-complet avec uniquement du pattern matching, il y a Thue par exemple !
Cela dit, moué. Le pattern matching à la Elixir, je crois que c'est trop gros pour moi. Ca sent la chasse au T-Rex avec une sarbacane. :'(
Il y a plusieurs implémentations de mini-kanren en Javascript, mais j'ai jamais trop compris le principe d'implémentation du backtracking. Petit cerveau, trop de données.