The reflection machinery does not treat the module telescope consistently #6200
Labels
reflection
Elaborator reflection, macros, tactic arguments
type: enhancement
Issues and pull requests about possible improvements
Milestone
The reflection primitives
getType
andgetDefinition
return definitions that include the module telescope. However, the quoting machinery does not in general return definitions that have been lifted to the top-level. Here is one example:Output:
Note that the type of
f
includes the module parameter, butf
is not applied to the module parameter in the quoted representation of the goal type.I think that the reflection machinery should be consistent, and always treat the module telescope in the same way. Internally
f
is presumably already applied to the module parameter, so I guess an active decision was taken to remove module parameters when quoting terms:agda/src/full/Agda/TypeChecking/Quote.hs
Lines 286 to 288 in aed62b9
Can someone explain why the reflection machinery is set up in this way? Wouldn't it make more sense to always work on the top-level, like Agda does internally?
The text was updated successfully, but these errors were encountered: