Bonjour,
J'aimerais juste faire une rapide "sanity check" sur les indices de De Bruijn
* * r_index * / * [4] Nat = [..] * [3] a = [..] r_index r_offset * [2] b = [..] \ / * [1] zero = Nat [..] || Nat DBI = 4 - 1 = 3 (zero, a, b) * [0] one = Nat [..] || Nat DBI = 4 - 0 = 4 * || Zero DBI = 1
Dans le cas d'une récursion j'ai besoin de repérer les variables libres pour les push dans le contexte de la lambda. Cette étape va être faite deux fois, une fois pendant le lexp parsing pour déterminer l'index et une fois pendant l'évaluation pour créer le contexte de la lambda.