[Agda] Avoiding η-contraction
Andrés Sicard-Ramírez
andres.sicard.ramirez at gmail.com
Sun Mar 3 16:42:36 CET 2013
Hi,
Given for example
postulate
D : Set
A : D → Set
∃ : (A : D → Set) → Set
foo : ∀ d → A d → ∃ (λ e → A e)
bar : ∀ d → A d → ∃ A
I know that the *internal* representation of foo and bar are the same
because Agda η-contracts the types.
For debugging my program, I need to avoid the η-contraction performed
by Agda, so I replaced in the module Agda.TypeChecking.EtaContract the
function
etaContract :: TermLike a => a -> TCM a
etaContract = traverseTermM etaOnce
by
etaContract = return
but it didn't avoid the η-contraction.
How can I avoid the η-contraction on the internal representation?
Thanks,
--
Andrés
More information about the Agda
mailing list