------------------------------------------------------------------------ module tangled where open import Relation.Binary.PropositionalEquality hiding ([_]) open import Data.List as List open import Reflection open import Data.Nat open import Data.Unit _>>=_ : ∀ {a b} {A : Set a} {B : Set b} → TC A → (A → TC B) → TC B _>>=_ = bindTC _>>_ : ∀ {a b} {A : Set a} {B : Set b} → TC A → TC B → TC B _>>_ = λ p q → p >>= (λ _ → q) {- 𝓋isible 𝓇elevant 𝒶rgument -} 𝓋𝓇𝒶 : {A : Set} → A → Arg A 𝓋𝓇𝒶 = arg (arg-info visible relevant) unquoteDecl = do η ← freshName "identity" τ ← quoteTC (∀ {A : Set} → A → A) declareDef (𝓋𝓇𝒶 η) τ defineFun η [ clause [ 𝓋𝓇𝒶 (var "x") ] (var 0 []) ] {- -- “identity” is not in scope!? _ : ∀ {x : ℕ} → identity x ≡ x _ = refl -}