Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document roadrunner internals #521

Open
andrewhu-uw opened this issue Dec 20, 2018 · 4 comments
Open

Document roadrunner internals #521

andrewhu-uw opened this issue Dec 20, 2018 · 4 comments
Assignees

Comments

@andrewhu-uw
Copy link
Member

As a part of preparing for #520, we need to document how roadrunner actually works, so that when someone tries to modify it as will be necessary to create dynamic model editing, they won't have to reverse engineer the entire system.

My plan right now is to write some more documents that will be put on the wiki

@andrewhu-uw andrewhu-uw self-assigned this Dec 20, 2018
@hsauro
Copy link

hsauro commented Dec 20, 2018 via email

@luciansmith
Copy link

I would strongly recommend using a system like Doxygen, where the functions inside roadrunner are documented in-place, and those documents can then be pulled out automatically to create an external documentation site. An overview would not be amiss, but again, putting it inside the roadrunner source code would mean that as roadrunner evolves in the future, the documentation for it is right next to the parts that they document, so you at least have a chance of noticing, when you change things, that you also need to change the docs.

It may be that this is exactly the system you're talking about, but I got worried when you said 'wiki' ;-)

@andrewhu-uw
Copy link
Member Author

I like the four kinds of documentation model.

  • Learning oriented
  • Goal oriented
  • Understanding oriented
  • Information oriented

Inline documentation would mostly be information oriented, and we're definitely missing a lot of it. However, what I was going for here was more on the understanding oriented side of documentation. As of now, when you look at the internals, there is neither any explanations nor references. What I think about when I started working on the backend, was that I needed an explanation of the pipeline, and most of the LLVM stuff I could google. So, my plan was to add some explanation of the LLVM pipeline to the wiki, and then maybe document some of the LLVM heavy parts of the code with documentation comments

@hsauro
Copy link

hsauro commented Dec 20, 2018 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants