Open VonTum opened 4 years ago
Another inconsistency:
xyzabcSubstitute generates with type signature
abc -> Variable -> xyz -> xyz
in DeBruijn and
Variable -> abc -> xyz -> xyz
in String representation
In the ExEff.txt file is a native code section that needs to be slightly adapted for De Bruijn indices due to functions that have a different number of arguments than in the string representation. A more uniform interface would also solve that issue.
Generate abstractions for dealing with inherent differences between String and DeBruijn representations, so that the same Implementation file can be applied to both. Or at least a greater effort is made unifying the two.
Two important places:
Constructor argument count is different between String and DeBruijn
generates
data Term = Abstraction Term
for DeBruijn anddata Term = Abstraction Variable Term
for StringAbstract away manual shifting of DeBruijn indices.
This strongly locks a codebase into DeBruijn indices.