Commit Graph

1283 Commits

Author SHA1 Message Date
Harendra Kumar
9714d362ca Add camel case conversion example 2019-10-17 19:33:51 +05:30
Harendra Kumar
1266a13e0e Add "concurrent" benchmark to charting/bench-show 2019-10-16 14:24:03 +05:30
Harendra Kumar
0e98baf013 Fix 7.10.3 build, add transformers dep 2019-10-15 00:40:15 +05:30
Harendra Kumar
343aa5d57d expose the "connect" operation 2019-10-15 00:40:15 +05:30
Harendra Kumar
38887806af rename listen to accept 2019-10-15 00:40:15 +05:30
Harendra Kumar
2080f850ad make TCP client read an "unfold" 2019-10-15 00:40:15 +05:30
Harendra Kumar
687646aeb6 Add bracketing operations (withServerAddr) for clients 2019-10-15 00:40:15 +05:30
Harendra Kumar
3c5c6a0373 rename connectionsOnAllAddrs to connectionsOnPort 2019-10-15 00:40:15 +05:30
Harendra Kumar
977a072ca3 rename listen* APIs to accept* 2019-10-15 00:40:15 +05:30
Harendra Kumar
31c17886bf Move Network.Client to Network.Inet.TCP 2019-10-15 00:40:15 +05:30
Harendra Kumar
49d3698bda Move Network/Server module to Network/Socket/Inet/TCP 2019-10-15 00:40:15 +05:30
Harendra Kumar
48fc6bfb35 move generic socket listening APIs to socket module 2019-10-15 00:40:15 +05:30
Harendra Kumar
cc2229e0ac update overview documentation 2019-10-15 00:40:15 +05:30
Harendra Kumar
1a60915d0b do not use useSocket in server example 2019-10-15 00:40:15 +05:30
Harendra Kumar
edf9b3646d implement useSocket using finally instead of bracket 2019-10-15 00:40:15 +05:30
Harendra Kumar
3093e7934a change "handle" to produce streams in exception case
Also implement gbracket for generalized exception handling/bracketing
2019-10-15 00:40:15 +05:30
Harendra Kumar
a0df530306 rename some unfold combinators 2019-10-15 00:40:15 +05:30
Harendra Kumar
9b4272e10d Change "handle" to produce a stream on exception 2019-10-15 00:40:15 +05:30
Harendra Kumar
5da3375b48 implement stream to unfold conversions 2019-10-15 00:40:15 +05:30
Harendra Kumar
90f0a97300 Add nilM to create an empty stream with side effect 2019-10-15 00:40:15 +05:30
Harendra Kumar
103705f21f Change the signatures of unfold bracket/exception ops 2019-10-15 00:40:15 +05:30
Harendra Kumar
9309ff73ef Move Network/Client to Internal/Network/Client 2019-10-15 00:40:15 +05:30
Harendra Kumar
df8de8d5bd rename withSocket to useSocket
operations like withFile create and a handle and then use it, however
withSocket uses an existing socket, so useSocket is a better name to avoid
confusion.

Also, make useSocket an internal operation for now, as it is trivial to
implement it.
2019-10-15 00:40:15 +05:30
Harendra Kumar
33e6fd015f Fix performance issue in "bracket" 2019-10-15 00:40:15 +05:30
Harendra Kumar
1305145e06 Add benchmarks for exception handling operations 2019-10-15 00:40:15 +05:30
Harendra Kumar
26715e2983 export array stream read/write ops 2019-10-15 00:40:15 +05:30
Harendra Kumar
3de89fe5db implement "withSocketM" using "finally" 2019-10-15 00:40:15 +05:30
Harendra Kumar
f8f323ae91 Implement "finally" using "bracket" 2019-10-15 00:40:15 +05:30
Harendra Kumar
16de98c61d Implement exception handling for unfolds 2019-10-15 00:40:15 +05:30
Harendra Kumar
e25db62db7 Add INLINE annotation on "onArray" 2019-10-15 00:40:15 +05:30
Harendra Kumar
1e3259ce32 use unfolds for Network.Socket APIs 2019-10-15 00:40:15 +05:30
Harendra Kumar
efe82423af move Network/Socket to Internal 2019-10-15 00:40:15 +05:30
Harendra Kumar
4af5462e5f Implement network server ops as unfolds 2019-10-15 00:40:15 +05:30
Harendra Kumar
51f12c9d22 Use unfolds to read from file handles 2019-10-15 00:40:15 +05:30
Harendra Kumar
bf5e153bf5 rename Handle readArrays* APIs to toStreamArrays* 2019-10-15 00:40:15 +05:30
Harendra Kumar
8dadcad439 rename the stream based Handle write APIs 2019-10-15 00:40:15 +05:30
Harendra Kumar
6225379eb6 Hide the "array stream" Handle IO APIs
These can possibly be expressed in terms of the generic polymorphic IO APIs
once we have those. For now we can use these from the Internal module.
2019-10-15 00:40:15 +05:30
Harendra Kumar
6f517f7ae5 Consolidate FileSystem.Handle with Internal.FileSystem.Handle 2019-10-15 00:40:15 +05:30
Harendra Kumar
58d1d61afd Use unfolds instead of streams for array reading 2019-10-15 00:40:15 +05:30
Harendra Kumar
a5b8b07630 Export some hidden internal functions 2019-10-15 00:40:15 +05:30
Harendra Kumar
e1022be150 Move Array module to Internal 2019-10-15 00:40:15 +05:30
Harendra Kumar
0dae18109d Add notes about module organization 2019-10-12 18:33:39 +05:30
Harendra Kumar
99c02e86c9 Add some notes about the need for linked-lists 2019-10-12 18:33:39 +05:30
Harendra Kumar
50aa8c1a93 rename runScan to scan
Also runPostscan to postscan.

This follows the naming of fold/unfold.
2019-09-29 15:55:47 +05:30
Harendra Kumar
16c2f015c2 rename "runFold" to "fold"
* we are using "unfold" for unfolding, runUnfold is longer and sounds a bit
  weird. So similar to "unfold" we should use "fold" for folding.
* Another reason is that "runFold" sound ends in "unfold" so can sound
  confusing.
2019-09-29 14:52:29 +05:30
Harendra Kumar
a1b976281a Move the unfold combinator to Stream prelude module 2019-09-29 12:51:01 +05:30
Harendra Kumar
4810c8eef6 Add nested unfold operations and benchmarks
Especially add chaining of unfolds and outerProduct operations. outerProduct is
just the cartesian product of two streams, it is like the concatMap/bind for
streams. In contrast to concatMap, the unfold nested looping operations are
amenable to complete fusion providing us amazing performance equivalent to
linear stream operations.
2019-09-29 01:37:22 +05:30
Harendra Kumar
db0a150df4 Enable FileSystem.File module example 2019-09-26 01:36:19 +05:30
Harendra Kumar
b8b3e17eef stop exporting ArrayStream APIs from Array module
This module is now only for convenience as all APIs can be expressed in terms
of Stream APIs with the same performance.
2019-09-26 01:36:19 +05:30
Harendra Kumar
8fbb4d4227 enable pipe/sink/list benchmarks 2019-09-26 01:05:15 +05:30