https://github.com/cvdlab/larlib-literate
Literate programming approach for LAR in Julia, source of https://github.com/cvdlab/LARLIB.jl
https://github.com/cvdlab/larlib-literate
algebraic-geometry algebraic-topology julia julia-library literate-programming
Last synced: about 1 month ago
JSON representation
Literate programming approach for LAR in Julia, source of https://github.com/cvdlab/LARLIB.jl
- Host: GitHub
- URL: https://github.com/cvdlab/larlib-literate
- Owner: cvdlab
- Created: 2017-03-20T14:05:59.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2018-03-10T15:44:29.000Z (over 8 years ago)
- Last Synced: 2025-03-08T17:58:14.691Z (over 1 year ago)
- Topics: algebraic-geometry, algebraic-topology, julia, julia-library, literate-programming
- Language: TeX
- Homepage:
- Size: 5.15 MB
- Stars: 0
- Watchers: 6
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# larlib-literate
Literate programming approach (with [nuweb](http://nuweb.sourceforge.net/)) for LAR in Julia. This is the development repo for the [LARLIB.jl package](https://github.com/cvdlab/LARLIB.jl).
If you are looking only for the LARLIB.jl package, this is not the right place.
### How to contribute
Here a quick start for the people who contribute to a literate programming project for the first time:
1. Fork this repo
2. Put your Julia code inside a LaTEX file called `ch_.tex` in the `src/pkg/tex/` folder. The barebone structure of this file must be:
```
\chapter{}
\label{ch:}
@O lib/jl/.jl
@{
@}
@O test/jl/.jl
@{using Base.Test
using LARLIB
@}
```
(refer to `src/pkg/tex/ch_planar_arrangement.tex` for a well
structured LaTEX+nuweb file)
3. Modify `src/pkg/tex/intro.tex` by appending to it a LaTEX chapter with the high-level description of the algorithm you implemented.
4. Add the line `\input{ch_.tex}` right before `\input{ch_utilities.tex}` inside `src/pkg/tex/book.tex`.
5. Add the line `include("./.jl")` anywhere inside the `@O lib/jl/LARLIB.jl` nuweb macro defined at the beginning of `src/pkg/tex/ch_larlib.tex`.
6. Add the line `include("./.jl")` anywhere inside the `@O test/jl/runtests.jl` nuweb macro defined at the bottom of `src/pkg/tex/ch_larlib.tex`.
7. Do a pull request. If it gets accepted, we will take care of the insertion of your contribution inside the [LARLIB.jl package repo](https://github.com/cvdlab/LARLIB.jl).
### Makefile Usage
`make all` generates Julia scripts and pdf docs of LARLIB and its test units.
`make lib_code` generates only the scripts and the tests.
`make lib_pdf` generates the pdf docs and the scripts and tests.
### Docker
You can use the previous build commands prepending `docker-` so that, e.g. `make all` becomes `make docker-all`, to use a docker image that contains everything to perform the building.