on master help sign in
Minor edits to motivation and external pointers
b9e64aaHarendra Kumar
README.md+16−8
@@ -27,31 +27,39 @@ like [pipes](https://hackage.haskell.org/package/pipes) and
27API. The streaming API of streamly is close to the monadic streams API of the
27API. The streaming API of streamly is close to the monadic streams API of the
28[vector](https://hackage.haskell.org/package/vector) package and similar in
28[vector](https://hackage.haskell.org/package/vector) package and similar in
29concept to the [streaming](https://hackage.haskell.org/package/streaming)
29concept to the [streaming](https://hackage.haskell.org/package/streaming)
30−package. In addition to streaming, streamly subsumes the functionality of list
30+package. In addition to providing streaming functionality, streamly subsumes
31−transformer libraries like `pipes` or
31+the functionality of list transformer libraries like `pipes` or
32[list-t](https://hackage.haskell.org/package/list-t) and also the logic
32[list-t](https://hackage.haskell.org/package/list-t) and also the logic
33programming library [logict](https://hackage.haskell.org/package/logict). On
33programming library [logict](https://hackage.haskell.org/package/logict). On
34the concurrency side, it subsumes the functionality of the
34the concurrency side, it subsumes the functionality of the
35[async](https://hackage.haskell.org/package/async) package. Because it streams
35[async](https://hackage.haskell.org/package/async) package. Because it streams
36and supports concurrency we can write FRP applications similar in concept to
36and supports concurrency we can write FRP applications similar in concept to
37[Yampa](https://hackage.haskell.org/package/Yampa) or
37[Yampa](https://hackage.haskell.org/package/Yampa) or
38−[reflex](https://hackage.haskell.org/package/reflex).
38+[reflex](https://hackage.haskell.org/package/reflex). To understand the
39+streaming library ecosystem and where streamly fits in you may want to read
40+[streaming libraries](https://github.com/composewell/streaming-benchmarks#streaming-libraries)
41+as well. Also see the [Comparison with Existing
42+Packages](https://hackage.haskell.org/package/streamly/docs/Streamly-Tutorial.html)
43+section in the streamly tutorial.
39
44
40Why use streamly?
45Why use streamly?
41
46
42 * Simple list like streaming API, if you know how to use lists then you know
47 * Simple list like streaming API, if you know how to use lists then you know
43 how to use streamly.
48 how to use streamly.
44− * Powerful yet simple and scalable concurrency. There is no other package
49+ * Powerful yet simple and scalable concurrency. Concurrency is not intrusive,
50+ concurrent programs are written exactly the same way as non-concurrent
51+ ones. There is no other package that provides such high level, simple and
45− that provides such high level and flexible concurrency support.
52+ flexible concurrency support.
46− * Unifies the functionality of many other disparate packages in a single
53+ * It is a general programming framework providing you all the necessary tools
54+ to solve a wide range of programming problems, unifying the functionality
47− concise and simple API.
55+ provided by several disparate packages in a concise and simple API.
48 * Best in class performance. See
56 * Best in class performance. See
49 [streaming-benchmarks](https://github.com/composewell/streaming-benchmarks)
57 [streaming-benchmarks](https://github.com/composewell/streaming-benchmarks)
50 for a comparison of popular streaming libraries on micro-benchmarks.
58 for a comparison of popular streaming libraries on micro-benchmarks.
51
59
52 For more information:
60 For more information:
53
61
54− * [Streamly.Tutorial](https://hackage.haskell.org/package/streamly-0.1.2/docs/Streamly-Tutorial.html) module in the haddock documentation for a detailed introduction
62+ * [Streamly.Tutorial](https://hackage.haskell.org/package/streamly/docs/Streamly-Tutorial.html) module in the haddock documentation for a detailed introduction
55 * [examples](https://github.com/composewell/streamly/tree/master/examples) directory in the package for some simple practical examples
63 * [examples](https://github.com/composewell/streamly/tree/master/examples) directory in the package for some simple practical examples
56
64
57## Streaming Pipelines
65## Streaming Pipelines