Haxl is a Haskell library that simplifies access to remote data, such as databases or web-based services. Haxl can automatically batch multiple requests to the same data source, request data from multiple data sources concurrently, cache previous requests, and memoize computations. Having all this handled for you behind the scenes means that your data-fetching code can be much cleaner and clearer than it would otherwise be if it had to worry about optimizing data-fetching. To use Haxl in your own application, you will likely need to build one or more data sources: the thin layer between Haxl and the data that you want to fetch, be it a database, a web API, a cloud service, or whatever. There is a generic datasource in "Haxl.DataSource.ConcurrentIO" that can be used for performing arbitrary IO operations concurrently, given a bit of boilerplate to define the IO operations you want to perform.

Features

  • Batch multiple requests to the same data source
  • Request data from multiple data sources concurrently
  • Cache previous requests
  • Memoize computations
  • Perform arbitrary IO operations concurrently
  • Includes data source for accessing the Facebook Graph API

Project Samples

Project Activity

See All Activity >

Categories

Database, Libraries

License

BSD License

Follow Haxl

Haxl Web Site

Other Useful Business Software
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Haxl!

Additional Project Details

Programming Language

Haskell

Related Categories

Haskell Database Software, Haskell Libraries

Registered

2022-01-31