babascript 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: db671bc38e7cc058d96a3a85a564913346f92da7
4
- data.tar.gz: 5131878d519a7934f314275076f98f0ade0d0d72
3
+ metadata.gz: 20d99b91a66d5e51f4d399b53ac83c08d05abe78
4
+ data.tar.gz: a50d34c3084cd917a5bc349c59bdd17e093ae2b6
5
5
  SHA512:
6
- metadata.gz: a94b0218a75e4432c129905ce14b98f9aba6ed09ccd4d27c68368981f797254b1410b26f015c9f8ffc63cf1bc65efadf9a7c0f4036ec09abd72d35cefcb71669
7
- data.tar.gz: f536534f55415d7f197ba7da30e68eab6833c3cfd92ee9c524964203977813b4c22f788643efd397441a6144227f565cd70bee99b0a38520e8f1b25dfdc9ab2f
6
+ metadata.gz: 468250ac8debfecbb82859ac9a763983d5c2497bf362d7bd8bc0ddbc6bdf9d4d90930552f2cc5981c82880a2d76f490d1501a999f4be27ee8e797ac192a181dd
7
+ data.tar.gz: db1d8eb0d48119c883fb89191ef41b3d87a8830ec0730dda41a12b1d0a853ff86e15fb22c49583953370b67fc9af60de8a8dfd7f02acfe9a0311cb770130163d
data/History.txt CHANGED
@@ -1,3 +1,7 @@
1
+ === 0.2.3 2013-08-07
2
+
3
+ * show Linda connection status on ibb and baba-vm
4
+
1
5
  === 0.2.2 2013-08-07
2
6
 
3
7
  * add ibb command
data/bin/baba-vm CHANGED
@@ -18,10 +18,12 @@ if args.has_option? :help
18
18
  end
19
19
 
20
20
  if args.has_option? :version
21
- STDERR.puts "BabaScript v#{BabaScript::VERSION} - ruby #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
21
+ STDERR.puts "BabaScript VM v#{BabaScript::VERSION} - ruby #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
22
22
  exit 1
23
23
  end
24
24
 
25
+ STDERR.puts "(connecting..)"
26
+
25
27
  EM::run do
26
28
  linda = EM::RocketIO::Linda::Client.new BabaScript.LINDA_BASE
27
29
  ts = linda.tuplespace[ BabaScript.LINDA_SPACE ]
@@ -29,7 +31,7 @@ EM::run do
29
31
  def take_task_and_run(ts)
30
32
  ts.take [:babascript, :eval] do |tuple|
31
33
  loop do
32
- print %Q{"#{tuple[2]}" #{tuple[3]} >}
34
+ print %Q{#{tuple[2]}(#{tuple[3].join(', ')}) >}
33
35
  line = STDIN.gets.strip
34
36
  next if line.empty?
35
37
  ts.write [:babascript, :return, tuple[4]["callback"], line]
@@ -40,7 +42,11 @@ EM::run do
40
42
  end
41
43
 
42
44
  linda.io.on :connect do
43
- puts "connect (#{linda.io.type}). You are now BABA."
45
+ STDERR.puts "(#{type} connect! You are now BABA.)"
44
46
  take_task_and_run(ts)
45
47
  end
48
+
49
+ linda.io.on :disconnect do
50
+ STDERR.puts "(#{type} closed)"
51
+ end
46
52
  end
data/bin/ibb CHANGED
@@ -1,18 +1,49 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'rubygems'
3
+ require 'args_parser'
3
4
  $:.unshift File.expand_path '../lib', File.dirname(__FILE__)
4
5
  require 'babascript'
5
6
  load "#{ENV['HOME']}/.ibbrc" if File.exists? "#{ENV['HOME']}/.ibbrc"
6
7
 
7
- BabaScript.baba do
8
- STDERR.puts "BabaScript v#{BabaScript::VERSION} - ruby #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
9
- print "[IBB] > "
10
- while line = STDIN.gets do
11
- line.strip!
12
- unless line.empty?
13
- puts "(waiting response)"
14
- p instance_eval line
15
- end
8
+ args = ArgsParser.parse ARGV do
9
+ arg :version, "show version", :alias => :v
10
+ arg :help, "show help", :alias => :h
11
+ end
12
+
13
+
14
+ binname = File.basename(__FILE__)
15
+ if args.has_option? :help
16
+ STDERR.puts "Interactive BabaScript v#{BabaScript::VERSION}"
17
+ STDERR.puts args.help
18
+ exit 1
19
+ end
20
+
21
+ if args.has_option? :version
22
+ STDERR.puts "Interactive BabaScript v#{BabaScript::VERSION} - ruby #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
23
+ exit 1
24
+ end
25
+
26
+ STDERR.puts "(connecting..)"
27
+
28
+ EM::run do
29
+ BabaScript::Baba.linda.io.on :connect do
30
+ STDERR.puts "(#{type} connect!)"
31
+ end
32
+
33
+ BabaScript::Baba.linda.io.on :disconnect do
34
+ STDERR.puts
35
+ STDERR.puts "(#{type} closed)"
36
+ end
37
+
38
+ BabaScript.baba do
16
39
  print "[IBB] > "
40
+ while line = STDIN.gets do
41
+ line.strip!
42
+ unless line.empty?
43
+ STDERR.puts "(waiting response)"
44
+ p instance_eval line
45
+ end
46
+ print "[IBB] > "
47
+ end
17
48
  end
18
49
  end
@@ -0,0 +1,9 @@
1
+ module BabaScript
2
+ def self.LINDA_BASE
3
+ ENV["LINDA_BASE"] || "http://linda.masuilab.org"
4
+ end
5
+
6
+ def self.LINDA_SPACE
7
+ ENV["BABA"] || "takumibaba"
8
+ end
9
+ end
@@ -1,3 +1,3 @@
1
1
  module BabaScript
2
- VERSION = "0.2.2"
2
+ VERSION = "0.2.3"
3
3
  end
data/lib/babascript.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require "babascript/version"
2
+ require "babascript/options"
2
3
  require "babascript/baba"
3
4
  require "eventmachine"
4
5
  require "em-rocketio-linda-client"
@@ -6,11 +7,4 @@ require "json"
6
7
  require 'digest/md5'
7
8
 
8
9
  module BabaScript
9
- def self.LINDA_BASE
10
- ENV["LINDA_BASE"] || "http://linda.masuilab.org"
11
- end
12
-
13
- def self.LINDA_SPACE
14
- ENV["BABA"] || "takumibaba"
15
- end
16
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: babascript
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sho Hashimoto
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-08-06 00:00:00.000000000 Z
12
+ date: 2013-08-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: em-rocketio-linda-client
@@ -104,6 +104,7 @@ files:
104
104
  - bin/ibb
105
105
  - lib/babascript.rb
106
106
  - lib/babascript/baba.rb
107
+ - lib/babascript/options.rb
107
108
  - lib/babascript/version.rb
108
109
  - samples/sample.bb
109
110
  - samples/sample.rb