{"action":"created","issue":{"url":"https://api.github.com/repos/bignerdranch/Deferred/issues/21","labels_url":"https://api.github.com/repos/bignerdranch/Deferred/issues/21/labels{/name}","comments_url":"https://api.github.com/repos/bignerdranch/Deferred/issues/21/comments","events_url":"https://api.github.com/repos/bignerdranch/Deferred/issues/21/events","html_url":"https://github.com/bignerdranch/Deferred/issues/21","id":101942910,"number":21,"title":"provide a context-specific alias for flatMap to assist in learning the API","user":{"login":"jeremy-w","id":29010,"avatar_url":"https://avatars.githubusercontent.com/u/29010?v=3","gravatar_id":"","url":"https://api.github.com/users/jeremy-w","html_url":"https://github.com/jeremy-w","followers_url":"https://api.github.com/users/jeremy-w/followers","following_url":"https://api.github.com/users/jeremy-w/following{/other_user}","gists_url":"https://api.github.com/users/jeremy-w/gists{/gist_id}","starred_url":"https://api.github.com/users/jeremy-w/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeremy-w/subscriptions","organizations_url":"https://api.github.com/users/jeremy-w/orgs","repos_url":"https://api.github.com/users/jeremy-w/repos","events_url":"https://api.github.com/users/jeremy-w/events{/privacy}","received_events_url":"https://api.github.com/users/jeremy-w/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/bignerdranch/Deferred/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/bignerdranch/Deferred/labels/question","name":"question","color":"cc317c"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/bignerdranch/Deferred/milestones/2","html_url":"https://github.com/bignerdranch/Deferred/milestones/2.0","labels_url":"https://api.github.com/repos/bignerdranch/Deferred/milestones/2/labels","id":1232246,"number":2,"title":"2.0","description":null,"creator":{"login":"zwaldowski","id":170812,"avatar_url":"https://avatars.githubusercontent.com/u/170812?v=3","gravatar_id":"","url":"https://api.github.com/users/zwaldowski","html_url":"https://github.com/zwaldowski","followers_url":"https://api.github.com/users/zwaldowski/followers","following_url":"https://api.github.com/users/zwaldowski/following{/other_user}","gists_url":"https://api.github.com/users/zwaldowski/gists{/gist_id}","starred_url":"https://api.github.com/users/zwaldowski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zwaldowski/subscriptions","organizations_url":"https://api.github.com/users/zwaldowski/orgs","repos_url":"https://api.github.com/users/zwaldowski/repos","events_url":"https://api.github.com/users/zwaldowski/events{/privacy}","received_events_url":"https://api.github.com/users/zwaldowski/received_events","type":"User","site_admin":false},"open_issues":3,"closed_issues":0,"state":"open","created_at":"2015-07-29T19:27:17Z","updated_at":"2015-08-24T01:43:15Z","due_on":null,"closed_at":null},"comments":3,"created_at":"2015-08-19T16:39:49Z","updated_at":"2015-08-31T19:59:54Z","closed_at":null,"body":"`flatMap` is a generic term that's great for people who can come at this from that level already, but does a disservice to people whose first exposure to something like this is `Deferred`. Providing a more deferred-specific API with a more suggestive name alongside `flatMap` would hopefully allow them to ramp up to understanding `flatMap` in this context.\r\n\r\nSuggestions:\r\n\r\n- `andEventually`\r\n- `eventually`\r\n- `whenResolved`\r\n- `andThen`\r\n\r\nThe tricky part to me is that these all could just as well be read as aliases `map`, since the difference between `map` and `flatMap` comes down to `map` returning a `Deferred<Value>` that's been resolved from the get-go, while `flatMap` allows you to return any flavor of `Deferred<Value>`."},"comment":{"url":"https://api.github.com/repos/bignerdranch/Deferred/issues/comments/136483496","html_url":"https://github.com/bignerdranch/Deferred/issues/21#issuecomment-136483496","issue_url":"https://api.github.com/repos/bignerdranch/Deferred/issues/21","id":136483496,"user":{"login":"jjmanton","id":1005494,"avatar_url":"https://avatars.githubusercontent.com/u/1005494?v=3","gravatar_id":"","url":"https://api.github.com/users/jjmanton","html_url":"https://github.com/jjmanton","followers_url":"https://api.github.com/users/jjmanton/followers","following_url":"https://api.github.com/users/jjmanton/following{/other_user}","gists_url":"https://api.github.com/users/jjmanton/gists{/gist_id}","starred_url":"https://api.github.com/users/jjmanton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jjmanton/subscriptions","organizations_url":"https://api.github.com/users/jjmanton/orgs","repos_url":"https://api.github.com/users/jjmanton/repos","events_url":"https://api.github.com/users/jjmanton/events{/privacy}","received_events_url":"https://api.github.com/users/jjmanton/received_events","type":"User","site_admin":false},"created_at":"2015-08-31T19:59:54Z","updated_at":"2015-08-31T19:59:54Z","body":"Any thoughts on C++/Boost futures? http://www.boost.org/doc/libs/1_55_0/doc/html/thread/synchronization.html#thread.synchronization.futures.reference.unique_future.then\r\n\r\nThey use method names like then, upon, unwrap."}}