Skip to content

Things To Do

Harendra Kumar edited this page Sep 22, 2017 · 22 revisions

Documentation

  • Update documentation
  • Add a tutorial

Examples

  • Update existing examples
  • Cover all main use cases and organize them systematically
  • Add some FRP/SDL examples/games

APIs

  • Add missing APIs
  • foldr or Foldable instance
  • left fold function for use with the foldl library
  • zip API?

Features

  • Cross thread recursion
  • Free applicative and Free Alternative
  • Parallel applicative?
  • Cancel dropped tasks (e.g. take 1)
  • Do we need a dual Alternative i.e. race or just use take 1?
  • Coalescing of tasks based on programmer defined criteria
    • Batching based on the target host
    • Batching/chunking for parallel/distributed execution
    • Batching iterations
  • Controlled parallelism:
    • Bounded push queue size and API for that
    • Control based on the level in the tree
    • Control based on the CPU/IO utilization based pacing
    • Utilize non-blocking IO

Refactoring

  • Create a foldr library like the foldl library to facilitate the upstream state passing across folded items. This should generalise the upstream context sharing as implemented in asyncly.
Clone this wiki locally