Skip to content

interact with eventmachine code - asynchronously of course

License

Notifications You must be signed in to change notification settings

cldwalker/ripl-em

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

Run EventMachine code in a ripl shell - asynchronously of course

Install

Install the gem with:

gem install ripl-em

Usage

$ ripl em
>> require 'em-http-request'
=> true

>> def get(url); req = EM::HttpRequest.new(url).get; req.callback {|h| puts h.response }; end
=> nil

# Make two requests and watch them return in reverse order
>> get 'http://robolot.herokuapp.com/sleep/10'
=> [#\<Proc:0x00000101a76848@(ripl):4>]
>> get 'http://robolot.herokuapp.com/sleep/1'
=> [#\<Proc:0x00000101a76848@(ripl):4>]
Sir, I slept for 1 second(s). Anything else I can zzz...
Sir, I slept for 10 second(s). Anything else I can zzz...

Todo

  • Autocompletion - Requires an Em::Connection that responds to both newlines and tabs. Any takers? :)

  • Basic Readline behavior - Up/Down Arrow -> Previous/Next history

  • Retry EM loop if callback raises error

About

interact with eventmachine code - asynchronously of course

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages