on master help sign in
Make all the links in md docs absolute to the repo root
commit3cdb718b95d1a6455e4b83c29e48daec3b4c199d authorAdithya Kumar <adithya@composewell.com> dateFri 11 Feb 2022, 06:54 (5 years ago) parent3ee2864
11 files changed+33−33
CONTRIBUTING.md+12−12 benchmark/README.md+1−1 dev/MAINTAINING.md+1−1 dev/utf8-decoder.md+3−3 docs/Changelog.md+2−2 docs/Introduction.md+6−6 docs/Overview.md+1−1 docs/faq.md+1−1 docs/getting-started.md+2−2 docs/streamly-vs-lists.md+1−1 docs/unified-abstractions.md+3−3
CONTRIBUTING.md+12−12
@@ -34,8 +34,8 @@ The `bin/test.sh` and `bin/bench.sh` are custom scripts to perform test
3434and benchmarking tasks conveniently. They support running a group of
3535tests or benchmarks, coverage, using correct optimization flags for
3636benchmarking, benchmark comparison reports etc. Use the `--help` option
37−to see how to use these. See [benchmark/README.md](benchmark/README.md)
38−and [test/README.md](test/README.md) for more details.
37+to see how to use these. See [benchmark/README.md](/benchmark/README.md)
38+and [test/README.md](/test/README.md) for more details.
3939
4040You can also run tests or benchmarks directly for example:
4141
@@ -86,13 +86,13 @@ Here is a quick checklist for a PR, for details please see the next section:
8686* Compiler warnings are fixed
8787* Reasonable hlint suggestions are accepted
8888* Tests are added to cover the changed parts
89−* All [tests](test) pass
90−* [Performance benchmarks](benchmark) are added, where applicable
91−* No significant regressions are reported by [performance benchmarks](benchmark/README.md)
89+* All [tests](/test) pass
90+* [Performance benchmarks](/benchmark) are added, where applicable
91+* No significant regressions are reported by [performance benchmarks](/benchmark/README.md)
9292* Haddock documentation is added to user visible APIs and data types
93−* Tutorial module, [Introduction](docs/Introduction.md), and [guides](docs) are
93+* Tutorial module, [Introduction](/docs/Introduction.md), and [guides](/docs) are
9494 updated if necessary.
95−* [Changelog](docs/Changelog.md) is updated if needed
95+* [Changelog](/docs/Changelog.md) is updated if needed
9696* The code conforms to the license, it is not stolen, credit is given,
9797 copyright notices are retained, original license is included if needed.
9898
@@ -145,8 +145,8 @@ BRANCH.
145145### Testing
146146
147147It is a good idea to include tests for the changes where applicable. See
148−the existing tests in the [test](test) directory. Also see the
149−[test/README.md](test/README.md) for more details on how to run the tests.
148+the existing tests in the [test](/test) directory. Also see the
149+[test/README.md](/test/README.md) for more details on how to run the tests.
150150
151151### Documentation
152152
@@ -154,7 +154,7 @@ For user visible APIs, it is a good idea to provide haddock documentation that
154154is easily understood by the end programmer and does not sound highfalutin,
155155and preferably with examples. If your change affects the tutorial or needs to
156156be mentioned in the tutorial then please update the tutorial. Check if the
157−additional [guides](docs) are affected or need to updated.
157+additional [guides](/docs) are affected or need to updated.
158158
159159### Performance Benchmarks
160160
@@ -163,7 +163,7 @@ any of the existing performance benchmarks. If you introduced something new
163163then you may want to add benchmarks to check if it performs as well as expected
164164by the programmers to deem it usable.
165165
166−See the [README](benchmark/README.md) file in the `benchmark` directory for more
166+See the [README](/benchmark/README.md) file in the `benchmark` directory for more
167167details on how to run the benchmarks.
168168
169169The first level of check is the regression in "allocations", this is
@@ -222,7 +222,7 @@ copying does not have an associated license please do not use it.
222222
223223* Use https://streamly.composewell.com/ for searching in reference docs
224224* Build haddock docs for latest reference docs
225−* See [the dev directory](dev) for design guidelines and dev documents.
225+* See [the dev directory](/dev) for design guidelines and dev documents.
226226
227227## Coding Guidelines
228228
benchmark/README.md+1−1
@@ -310,7 +310,7 @@ they are usually annotated so in their documentation.
310310### Resolving the problem
311311
312312Review the problematic code, see [the optimization
313−guide](../dev/optimization-guidelines.md) for common problems and how to
313+guide](/dev/optimization-guidelines.md) for common problems and how to
314314solve those. If no obvious issues are found on review, then generate and
315315examine the core.
316316
dev/MAINTAINING.md+1−1
@@ -141,7 +141,7 @@
141141 * Create a git tag corresponding to the release where X.Y.Z is the new
142142 package version (`git tag vX.Y.Z && git push -f origin vX.Y.Z`).
143143 * Mask out the build status lines from the
144− [docs/Introduction.md](docs/Introduction.md)
144+ [docs/Introduction.md](/docs/Introduction.md)
145145 * Upload to hackage
146146 * Use a clean workspace to create source distribution
147147 by freshly cloning the git repository. The reason for
dev/utf8-decoder.md+3−3
@@ -263,7 +263,7 @@ back to it, we\'ve seen a whole Unicode character. Transitions not in
263263the graph are disallowed; they all lead to state one, which has been
264264omitted for readability.
265265
266−![DFA with range transitions](./dfa-bytes.png)
266+![DFA with range transitions](/dev/dfa-bytes.png)
267267
268268### Automaton with character class transitions
269269
@@ -273,7 +273,7 @@ encoding the ranges directly, the ranges are split such that each byte
273273belongs to exactly one character class. Then the transitions go over
274274these character classes.
275275
276−![DFA with class transitions](./dfa-classes.png)
276+![DFA with class transitions](/dev/dfa-classes.png)
277277
278278### Mapping bytes to character classes
279279
@@ -404,7 +404,7 @@ the non-ASCII starter is swapped (approximately a 5% increase), but GCC
404404I have experimented with various rearrangements of states and character
405405classes. A seemingly promising one is the following:
406406
407−![Re-arranged DFA with class transitions](./dfa-rearr.png)
407+![Re-arranged DFA with class transitions](/dev/dfa-rearr.png)
408408
409409One of the continuation ranges has been split into two, the other
410410changes are just renamings. This arrangement allows, when a continuation
docs/Changelog.md+2−2
@@ -36,7 +36,7 @@ See API-changelog.txt for new APIs introduced.
3636
3737## 0.8.0 (Jun 2021)
3838
39−See [API Changelog](./API-changelog.txt) for a complete list of signature
39+See [API Changelog](/docs/API-changelog.txt) for a complete list of signature
4040changes and new APIs introduced.
4141
4242### Breaking changes
@@ -75,7 +75,7 @@ changes and new APIs introduced.
7575
7676### Enhancements
7777
78−* See [API Changelog](./API-changelog.txt) for a complete list of new
78+* See [API Changelog](/docs/API-changelog.txt) for a complete list of new
7979 modules and APIs introduced.
8080* The Fold type is now more powerful, the new termination behavior allows
8181 to express basic parsing of streams using folds.
docs/Introduction.md+6−6
@@ -43,11 +43,11 @@ further reading.
4343If you wish to follow along with this guide, you will need to have
4444[Streamly][] installed.
4545
46−Please see the [Getting Started With The Streamly Package](getting-started.md)
46+Please see the [Getting Started With The Streamly Package](/docs/getting-started.md)
4747guide for instructions on how to install [Streamly][].
4848
4949If you wish to run benchmarks, please be sure to build your
50−application using the instructions in the [Build Guide](compiling.md).
50+application using the instructions in the [Build Guide](/docs/Compiling.md).
5151
5252### An overview of the types used in these examples
5353
@@ -490,7 +490,7 @@ Examples][streamly-examples] web page.
490490* [Streaming Benchmarks][streaming-benchmarks]
491491* [Concurrency Benchmarks][concurrency-benchmarks]
492492* Functional Conf 2019 [Video](https://www.youtube.com/watch?v=uzsqgdMMgtk) | [Slides](https://www.slideshare.net/HarendraKumar10/streamly-concurrent-data-flow-programming)
493−* [Other Guides](./)
493+* [Other Guides](/)
494494* [Streamly Homepage][Streamly]
495495
496496## Performance
@@ -595,7 +595,7 @@ significant way:
595595 * Gabriella Gonzalez ([foldl](https://hackage.haskell.org/package/foldl))
596596 * Alberto G. Corona ([transient](https://hackage.haskell.org/package/transient))
597597
598−Please see the [`credits`](./Credits.md) directory for a full
598+Please see the [`credits`](/docs/Credits.md) directory for a full
599599list of contributors, credits and licenses.
600600
601601## Licensing
@@ -646,6 +646,6 @@ links (for online docs) before we release.
646646[CirclingSquare.hs]: https://github.com/composewell/streamly-examples/tree/master/examples/CirclingSquare.hs
647647
648648<!-- local files -->
649−[LICENSE]: ../LICENSE
650−[CONTRIBUTING.md]: ../CONTRIBUTING.md
649+[LICENSE]: /LICENSE
650+[CONTRIBUTING.md]: /CONTRIBUTING.md
651651[docs]: docs/
docs/Overview.md+1−1
@@ -95,7 +95,7 @@ can be constructed from monadic effects, not just pure elements. Streams are
9595processed just like lists, with list like combinators, except that they are
9696monadic and work in a streaming fashion. In other words streamly just completes
9797what lists lack, you do not need to learn anything new. Please see [streamly vs
98−lists](streamly-vs-lists.md) for a detailed comparison.
98+lists](/docs/streamly-vs-lists.md) for a detailed comparison.
9999
100100Not surprisingly, the monad instance of streamly is a list transformer, with
101101concurrency capability.
docs/faq.md+1−1
@@ -2,7 +2,7 @@
22
33This document provides idioms or examples to solve common programming
44problems using streamly. To start with please go through [Streamly Quick
5−Overview](./Introduction.md) and [`Streamly examples repository`][streamly-examples].
5+Overview](/docs/Introduction.md) and [`Streamly examples repository`][streamly-examples].
66This document provides additional examples.
77
88## Distribute and Zip Concurrently
docs/getting-started.md+2−2
@@ -279,11 +279,11 @@ streamly][streamly-github] on Github.
279279If you got this far successfully, congratulations!
280280
281281* For an overview of the `streamly` package, please read the
282− [Streamly Quick Overview](./Introduction.md).
282+ [Streamly Quick Overview](/docs/Introduction.md).
283283* Please browse the code examples in the
284284 [`Streamly examples repository`][streamly-examples].
285285* If you would like to start on a real world project, please take a
286− look at the [Streamly Build Guide](Compiling.md).
286+ look at the [Streamly Build Guide](/docs/Compiling.md).
287287* For comprehensive documentation please visit the
288288 [Streamly Homepage][Streamly].
289289
docs/streamly-vs-lists.md+1−1
@@ -237,7 +237,7 @@ resources compared to streamly. We only show those operations that are at least
237237shown in a sorted order, from list's worst performing ones on the left to its
238238best ones on the right.
239239
240−![Streamly vs Lists (time) comparison](streamly-vs-list-time.svg)
240+![Streamly vs Lists (time) comparison](/docs/streamly-vs-list-time.svg)
241241
242242## Why use streams instead of lists?
243243
docs/unified-abstractions.md+3−3
@@ -8,7 +8,7 @@ ecosystem.
88This document discusses the related packages in the Haskell ecosystem
99and how streamly unifies, overlaps, or compares with those. We provide
1010simple code snippets for illustrations, for a better overview of the
11−library please see the [Streamly Quick Overview](./Introduction.md) document.
11+library please see the [Streamly Quick Overview](/docs/Introduction.md) document.
1212
1313## Existing Haskell Libraries
1414
@@ -94,7 +94,7 @@ uses a vector-like stream representation which is amenable to
9494low-level code having performance comparable to C.
9595
9696To further understand the similarity with list API, please see [Streamly vs.
97−lists](streamly-vs-lists.md).
97+lists](/docs/streamly-vs-lists.md).
9898For comparison of Streamly performance with other libraries see
9999[streaming benchmarks](https://github.com/composewell/streaming-benchmarks).
100100
@@ -161,7 +161,7 @@ The same combinators that are used for serial streams e.g. 'unfoldrM',
161161'replicateM', 'repeatM' work concurrently when used at the appropriate type.
162162It allows concurrent programs to be written declaratively and composed
163163idiomatically. They are not much different than serial programs. See
164−[Streamly vs async](streamly-vs-async.md)
164+[Streamly vs async](/docs/streamly-vs-async.md)
165165for a comparison of Streamly with the `async` package.
166166
167167Streamly provides concurrent scheduling and looping similar to to