Skip to content

Latest commit

 

History

History
21 lines (15 loc) · 936 Bytes

README.md

File metadata and controls

21 lines (15 loc) · 936 Bytes

fab

Goals

fab provides a family monadic build systems for use inside programs.

It is roughly inspired by Build Systems à la Carte, but heavily refactored with type classes due to the following goals:

  • Fabrications of one type can depend on fabrications of other types.
  • Every key type can specify what strategy to use for build invalidation.

The following goals are not yet implemented:

  • Batching - provide a mechanism (like Haxl) to collect many fabrication requests for the same key type and process them simultaneously. This is most useful in Haxl-like contexts, fetching from data sources, but there may be other situations when fabricating a bunch of something is cheaper as a group than individually.
  • Multithreading. The current schedulers are very simplistic and cannot run multiple fabricators at the same time.