Something went wrong on our end
Forked from
Lifeware / biocham
2273 commits behind the upstream repository.
-
FAGES Francois authoredFAGES Francois authored
The file toc.org (edit with tab) is used for three things - for creating the Biocham runtime from the source code, by defining the order in which the source files have to be loaded; - for generating the Biocham documentation in the directories doc and devdoc (from annotations in the source code using the runtime for running the examples), by defining the order of the sections and their title; - for generating the Biocham notebook and web interface with the same structure as the documentation. The Makefile does the jobs. Documentation ------------- La documentation est générée automatiquement à partir du code et du fichier toc.org (ouverture des sous sections avec tab) dans les repertoireq doc/index.html et devdoc/index.html (versions index.tex également disponibles pour xelatex) Le fichier toc.org definit également l'ordre de chargement des fichiers Prolog pour la compilation de Biocham, ce qui contraint donc cet ordre à ne pas faire de référence en avant, tout doit être défini avant y compris les opérateurs. Il est bon de documenter les prédicats avant même de les programmer complètement. Par exemple dans le fichier odefunction.pl: - on définit un module pour la commande add_function qui est exportée du module. - le but devdoc crée une nouvelle section dans la documentation (l’ordre de chargement des modules est déterminé dans le fichier détermine l’ordre des sections dans la doc - on définit le prédicat add_function en disant add_function(FunctionList) :- - qu’il a un nombre variable d’arguments traités en liste biocham_command(*), type(FunctionList, '*'(term = term)), - que ce prédicat se retrouvera documenté et donn& avec un exemple (exécuté et inséré dans la doc par make) doc(' adds reactions to compute the result of a function of the current variables in the concentration of a new variable at steady state. \\begin{example} '), biocham_silent(clear_model), biocham(present(x,1)), biocham(present(y,3)), biocham(add_function(z=x+y)), biocham(list_reactions), biocham(list_ode), doc(' \\end{example} ‘), - puis vient l’implémentation en Prolog new_ode_system(OdeSystem), export_ode(FunctionList, OdeSystem), import_reactions_from_ode_system(OdeSystem), delete_item(OdeSystem). Par ailleurs tous les fichiers plt sont exécutés comme des programmes de test. C’est bien aussi de les écrire pour tester l’implémentation et de les cometre pour tester les upgrade futurs. Par exemple odefunction.plt