#+TITLE: Interactive Editing Working #+begin_src idris data Vect : Nat -> Type -> Type where Nil : Vect Z a (::) : a -> Vect k a -> Vect (S k) a #+end_src #+IDRIS: %name Vect xs, ys, zs #+begin_src idris append : Vect n a -> Vect m a -> Vect (n + m) a append {n = Z} [] ys = ?foo_1 append {n = (S k)} (x :: xs) ys = ?foo_2 #+end_src #+begin_src idris vadd : Num a => Vect n a -> Vect n a -> Vect n a vadd [] [] = ?bar_1 vadd (x :: xs) (y :: ys) = ?baz_1 #+end_src #+begin_src idris suc : (x : Nat) -> (y : Nat) -> x = y -> S x = S y suc x x Refl = ?quux_1 #+end_src #+begin_src idris suc' : x = y -> S x = S y suc' {x = y} {y = y} Refl = ?quuz_1 #+end_src