#+TITLE: Linear Algebra #+SETUPFILE: ../docs/theme.setup * Summary #+name: synopsis #+begin_src ocaml :exports none :results value "Linear algebra utilities of QCaml libraries" #+end_src #+RESULTS: synopsis : Linear algebra utilities of QCaml libraries * Dune files :noexport: ** Generate dune files Use [C-c C-c] on the code below to create the output for the dune files #+header: :noweb strip-export #+header: :var name=(file-name-directory buffer-file-name) #+header: :var dune="lib/dune" #+header: :var dunetest="test/dune" #+begin_src python :exports none :results output none name = name.split('/')[-2] synopsis = """ <> """ with open(dune,'w') as f: f.write(f""" (library (name {name}) (public_name qcaml.{name}) (synopsis {synopsis} ) <> <> <> ) <> """) with open(dunetest,'w') as f: f.write(f""" (library (name test_{name}) (synopsis "Test for {name} library") (libraries alcotest qcaml.{name} ) ) """) #+end_src ** Dependencies #+name: dependencies #+begin_src elisp (libraries qcaml.common lacaml ) (instrumentation (backend landmarks)) #+end_src ** Modules without implementation #+name: noimplementation #+begin_src elisp #+end_src ** Extra C files #+begin_src elisp #+end_src ** Parser files #+name: lex-yacc #+begin_src elisp #+end_src