deferred - Modular and fast Promises implementation for JavaScript

  •        6

Deferred is complete, one of the fastest and natural promise implementation in JavaScript, with Deferred you can write clear maintainable code that takes maximum out of asynchronicity, in fact due to multi-dimensional nature of promises (chaining and nesting) you're forced to program declaratively. With Deferred you also can: Process collections of deferred calls. Handle Node.js asynchronous functions. Limit concurrency of scheduled tasks. Emit progress events or stream results partially on the go.


d : 1
es5-ext : ~0.10.37
event-emitter : ~0.3.5
next-tick : 1
timers-ext : ~0.1.2



Related Projects


  •    Javascript

Promise-mysql is a wrapper for mysqljs/mysql that wraps function calls with Bluebird promises. Usually this would be done with Bluebird's .promisifyAll() method, but mysqljs/mysql's footprint is different to that of what Bluebird expects. At the minute only the standard connection (using .createConnection()) and the pool (using .createPool()) is supported. createPoolCluster is not implemented yet.

posterus - Composable async primitives (futures) with cancelation, control over scheduling, and coroutines

  •    Javascript

Posterus is a library of promise-like asynchronous primitives (futures) that support cancelation. Futures compose just like promises, but can also be cleanly shut down, aborting pending operations and freeing resources. Posterus also exposes its inner scheduling capabilities, allowing you to "opt out" of asynchrony when needed (motivating example).

httpinvoke - A no-dependencies HTTP client library for browsers and Node

  •    Javascript

A no-dependencies HTTP client library for browsers and Node.js with a promise-based or Node.js-style callback-based API to progress events, text and binary file upload and download, partial response body, request and response headers, status code. Any one, two or three arguments can be skipped, except the url.

Promises, Promises...

  •    Javascript

A self-contained JavaScript implementation of the Promises/A+ specification (and Deferred provider), suitable for inclusion in larger libraries and projects.

jdeferred - Java Deferred/Promise library similar to JQuery.

  •    Java

JDeferred is a Java Deferred/Promise library similar to JQuery's Deferred Object.Inspired by JQuery and Android Deferred Object.

Deferred - Work with values that haven't been determined yet.

  •    Swift

Deferred lets you work with values that haven't been determined yet, like an array that's coming later (one day!) from a web service call. It was originally inspired by OCaml's Deferred library. See Deferred's comprehensive programming guide and documentation at the Deferred Reference.

lwt - OCaml promises and concurrent I/O.

  •    OCaml

Lwt is OCaml's concurrent programming library. It provides a single data type: the promise, which is a value that will become determined in the future. Creating a promise spawns a computation. When that computation is I/O, Lwt runs it in parallel with your OCaml code. OCaml code, including creating and waiting on promises, is run in a single thread by default, so you don't have to worry about locking or preemption. You can detach code to be run in separate threads on an opt-in basis.

future - :rocket: R package: future: Unified Parallel and Distributed Processing in R for Everyone

  •    R

The purpose of the future package is to provide a very simple and uniform way of evaluating R expressions asynchronously using various resources available to the user. In programming, a future is an abstraction for a value that may be available at some point in the future. The state of a future can either be unresolved or resolved. As soon as it is resolved, the value is available instantaneously. If the value is queried while the future is still unresolved, the current process is blocked until the future is resolved. It is possible to check whether a future is resolved or not without blocking. Exactly how and when futures are resolved depends on what strategy is used to evaluate them. For instance, a future can be resolved using a sequential strategy, which means it is resolved in the current R session. Other strategies may be to resolve futures asynchronously, for instance, by evaluating expressions in parallel on the current machine or concurrently on a compute cluster.

co - The ultimate generator based flow-control goodness for nodejs (supports thunks, promises, etc)

  •    Javascript

Generator based control flow goodness for nodejs and the browser, using promises, letting you write non-blocking code in a nice-ish has been released, which now relies on promises. It is a stepping stone towards the async/await proposal. The primary API change is how co() is invoked. Before, co returned a "thunk", which you then called with a callback and optional arguments. Now, co() returns a promise.

AwaitKit - The ES8 Async/Await control flow for Swift

  •    Swift

AwaitKit is a powerful Swift library inspired by the Async/Await specification in ES8 (ECMAScript 2017) which provides a powerful way to write asynchronous code in a sequential manner. Internally it uses PromiseKit to create and manage promises.

suspend - Callback-free control flow for Node using ES6 generators.

  •    Javascript

Generator-based control-flow for Node enabling asynchronous code without callbacks, transpiling, or selling your soul. Suspend is designed to work seamlessly with Node's callback conventions, promises, and thunks, but is also compatible with code that follows other conventions.

es6-promise - A polyfill for ES6-style Promises

  •    Javascript

A lightweight library that provides tools for organizing asynchronous code

Hydra - Lightweight full-featured Promises, Async & Await Library in Swift

  •    Swift

A more detailed look at how Hydra works can be found in ARCHITECTURE file or on Medium.

We have large collection of open source products. Follow the tags from Tag Cloud >>

Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.