#+TITLE: My First Idris2 Program This is a literate Idris2 Org-Mode file that the Idris2 understands. We can have visibile code blocks using source blocks in idris. #+BEGIN_SRC idris data Natural = Zero | Succ Natural #+END_SRC #+BEGIN_SRC idris data Vect : Natural -> Type -> Type where Empty : Vect Zero a Cons : a -> Vect k a -> Vect (Succ k) a #+END_SRC We can have hidden literate lines that Idris will understand. #+IDRIS: %name Vect xs, ys However, we Idris2' literate support is greedy and does not understand all of the supported literate modes comments and verbatim blocks. Thus: #+begin_example #+IDRIS: plus : Natural -> Natural -> Natural #+end_example is also an active code line. We can also abuse org-mode comments to hide code not required for publication. #+begin_comment idris cannotSeeThis : Natural -> Natural #+end_comment #+BEGIN_SRC idris main : IO () main = putStrLn "Hello!" #+END_SRC