madrona-rad 0.2.5 → 0.2.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. data/History.txt +14 -0
  2. data/Manifest.txt +41 -18
  3. data/Rakefile +5 -0
  4. data/bin/rad +16 -6
  5. data/lib/examples/blink_m_address_assignment.rb +104 -0
  6. data/lib/examples/blink_m_multi.rb +61 -0
  7. data/lib/examples/configure_pa_lcd_boot.rb +91 -0
  8. data/lib/examples/external_variables.rb +5 -1
  9. data/lib/examples/hello_array.rb +48 -0
  10. data/lib/examples/hello_array2.rb +79 -0
  11. data/lib/examples/hello_array_eeprom.rb +61 -0
  12. data/lib/examples/hello_eeprom.rb +4 -7
  13. data/lib/examples/hello_eeprom_lcdpa.rb +81 -0
  14. data/lib/examples/hello_lcd_charset.rb +75 -0
  15. data/lib/examples/hello_pa_lcd.rb +59 -0
  16. data/lib/examples/hysteresis_duel.rb +39 -0
  17. data/lib/examples/motor_knob.rb +30 -0
  18. data/lib/examples/orig_servo_throttle.rb +1 -1
  19. data/lib/examples/servo_calibrate_continuous.rb +92 -0
  20. data/lib/examples/servo_throttle.rb +1 -1
  21. data/lib/examples/sparkfun_lcd.rb +2 -2
  22. data/lib/examples/spectra_soft_pot.rb +34 -0
  23. data/lib/libraries/SWSerLCDpa/SWSerLCDpa.cpp +60 -25
  24. data/lib/libraries/SWSerLCDpa/SWSerLCDpa.h +8 -2
  25. data/lib/libraries/SWSerLCDsf/SWSerLCDsf.cpp +46 -27
  26. data/lib/libraries/SWSerLCDsf/SWSerLCDsf.h +5 -2
  27. data/lib/libraries/Stepper/Stepper.cpp +220 -0
  28. data/lib/libraries/Stepper/Stepper.h +86 -0
  29. data/lib/libraries/Stepper/keywords.txt +28 -0
  30. data/lib/libraries/Wire/utility/twi.c +449 -0
  31. data/lib/libraries/Wire/utility/twi.h +57 -0
  32. data/lib/plugins/blink_m.rb +79 -46
  33. data/lib/plugins/hysteresis.rb +52 -0
  34. data/lib/plugins/lcd_padding.rb +39 -0
  35. data/lib/plugins/spectra_symbol.rb +79 -0
  36. data/lib/rad/arduino_plugin.rb +21 -0
  37. data/lib/rad/arduino_sketch.rb +231 -53
  38. data/lib/rad/init.rb +2 -2
  39. data/lib/rad/rad_processor.rb +42 -1
  40. data/lib/rad/rad_type_checker.rb +26 -0
  41. data/lib/rad/sim/arduino_sketch.rb +57 -0
  42. data/lib/rad/tasks/build_and_make.rake +4 -4
  43. data/lib/rad/variable_processing.rb +49 -12
  44. data/lib/rad/version.rb +1 -1
  45. data/test/test_array_processing.rb +179 -0
  46. data/test/test_plugin_loading.rb +151 -0
  47. data/test/test_translation_post_processing.rb +185 -0
  48. data/{lib/test → test}/test_variable_processing.rb +63 -13
  49. data/website/index.html +8 -7
  50. metadata +66 -30
  51. data/lib/test/test_array_processing.rb +0 -78
@@ -0,0 +1,185 @@
1
+ #!/usr/local/bin/ruby -w
2
+
3
+ $TESTING = true
4
+
5
+ # this is a test stub for now
6
+ # lets review these
7
+ # neee to remove this constant from tests and pull it from rad
8
+ C_VAR_TYPES = "unsigned|int|long|double|str|char|byte|float|bool"
9
+ require "rubygems"
10
+ require "#{File.expand_path(File.dirname(__FILE__))}/../lib/rad/rad_processor.rb"
11
+ require "#{File.expand_path(File.dirname(__FILE__))}/../lib/rad/rad_rewriter.rb"
12
+ require "#{File.expand_path(File.dirname(__FILE__))}/../lib/rad/rad_type_checker.rb"
13
+ require "#{File.expand_path(File.dirname(__FILE__))}/../lib/rad/variable_processing"
14
+ require "#{File.expand_path(File.dirname(__FILE__))}/../lib/rad/arduino_sketch"
15
+ require 'test/unit'
16
+
17
+
18
+ class TranslationTesting < ArduinoSketch
19
+
20
+ def one
21
+ delay 1
22
+ end
23
+
24
+ def two
25
+ delay 1
26
+ @foo = 1
27
+ end
28
+
29
+ def three
30
+ @foo = 1
31
+ bar = 2
32
+ baz = wha
33
+ end
34
+
35
+ def four
36
+ @foo = 1
37
+ bar = 2
38
+ wiggle = wha
39
+ end
40
+
41
+ def five
42
+ @foo = 1
43
+ f = KOOL
44
+ end
45
+
46
+ def six
47
+ a = ZAK
48
+
49
+ end
50
+
51
+ def seven(int)
52
+ # coerce int to long int
53
+ a = int * 2
54
+ end
55
+
56
+ def eight(str)
57
+ # coerce str to string
58
+ a = ZAK + str
59
+ end
60
+
61
+ def nine
62
+ @my_array.each do |a|
63
+ delay a
64
+ end
65
+ end
66
+
67
+
68
+ end
69
+
70
+
71
+
72
+ class TestTranslationPostProcessing < Test::Unit::TestCase
73
+
74
+
75
+
76
+
77
+ def setup
78
+ $external_var_identifiers = ["__foo", "__toggle", "wiggle"]
79
+ $define_types = { "KOOL" => "long", "ZAK" => "str"}
80
+ $array_types = { "my_array" => "int"}
81
+
82
+
83
+ end
84
+
85
+ # remove these external variables and parens on variables
86
+ # need to actually run code through ruby_to_c for some of these tests
87
+
88
+ def test_int
89
+ name = "foo_a"
90
+ value_string = "int(__toggle = 0);"
91
+ expected = ""
92
+ result = ArduinoSketch.post_process_ruby_to_c_methods(value_string)
93
+ assert_equal(expected, result)
94
+ end
95
+
96
+ def test_bool
97
+ name = "foo_b"
98
+ value_string = "bool(__toggle = 0);"
99
+ expected = ""
100
+ result = ArduinoSketch.post_process_ruby_to_c_methods(value_string)
101
+ assert_equal(expected, result)
102
+ end
103
+
104
+ def test_long
105
+ name = "foo_c"
106
+ value_string = "long(__foo = 0);"
107
+ expected = ""
108
+ result = ArduinoSketch.post_process_ruby_to_c_methods(value_string)
109
+ assert_equal(expected, result)
110
+ end
111
+
112
+ def test_trans_one
113
+ name = "foo_d"
114
+ expected = "void\none() {\ndelay(1);\n}"
115
+ result = raw_rtc_meth = RADProcessor.translate(TranslationTesting, "one")
116
+ assert_equal(expected, result)
117
+ end
118
+
119
+ # notice the nice behavior of @foo
120
+ def test_trans_two
121
+ name = "foo_e"
122
+ expected = "void\ntwo() {\ndelay(1);\n__foo = 1;\n}"
123
+ result = raw_rtc_meth = RADProcessor.translate(TranslationTesting, "two")
124
+ assert_equal(expected, result)
125
+ end
126
+
127
+ # notice the nice behavior of @foo
128
+ def test_trans_three
129
+ name = "foo_f"
130
+ expected = "void\nthree() {\nlong bar;\nvoid * baz;\n__foo = 1;\nbar = 2;\nbaz = wha();\n}"
131
+ result = raw_rtc_meth = RADProcessor.translate(TranslationTesting, "three")
132
+ assert_equal(expected, result)
133
+ end
134
+
135
+ # need to take a closer look at this ... include "void * wiggle" regex?
136
+ #
137
+ def test_trans_four
138
+ name = "foo_f"
139
+ expected = "void\nfour() {\nlong bar;\nvoid * wiggle;\n__foo = 1;\nbar = 2;\nwiggle = wha();\n}"
140
+ result = raw_rtc_meth = RADProcessor.translate(TranslationTesting, "four")
141
+ assert_equal(expected, result)
142
+ end
143
+
144
+ def test_trans_five
145
+ name = "foo_f"
146
+ expected = "void\nfive() {\nlong f;\n__foo = 1;\nf = KOOL;\n}"
147
+ result = raw_rtc_meth = RADProcessor.translate(TranslationTesting, "five")
148
+ assert_equal(expected, result)
149
+ end
150
+
151
+ def test_trans_six
152
+ name = "foo_f"
153
+ expected = "void\nsix() {\nstr a;\na = ZAK;\n}"
154
+ result = raw_rtc_meth = RADProcessor.translate(TranslationTesting, "six")
155
+ assert_equal(expected, result)
156
+ end
157
+
158
+ def test_trans_seven
159
+ name = "foo_f"
160
+ expected = "void\nseven(long int) {\nlong a;\na = int * 2;\n}"
161
+ result = raw_rtc_meth = RADProcessor.translate(TranslationTesting, "seven")
162
+ assert_equal(expected, result)
163
+ end
164
+
165
+ def test_trans_eight
166
+ name = "foo_f"
167
+ expected = "void\neight(long str) {\nvoid * a;\na = ZAK + str;\n}"
168
+ result = raw_rtc_meth = RADProcessor.translate(TranslationTesting, "eight")
169
+ assert_equal(expected, result)
170
+ end
171
+
172
+ def test_trans_nine
173
+ name = "foo_f"
174
+ expected = "void\nnine() {\nunsigned int index_a;\nfor (index_a = 0; index_a < (int) (sizeof(__my_array) / sizeof(__my_array[0])); index_a++) {\nint a = __my_array[index_a];\ndelay(a);\n}\n}"
175
+ result = raw_rtc_meth = RADProcessor.translate(TranslationTesting, "nine")
176
+ assert_equal(expected, result)
177
+ end
178
+
179
+
180
+ ## need to look at unsigned long
181
+ ## need parens removal tests
182
+
183
+
184
+
185
+ end
@@ -4,9 +4,10 @@ $TESTING = true
4
4
 
5
5
  # need to tell it where we are
6
6
  # lets review these
7
- C_VAR_TYPES = "int|void|unsigned|long|short|uint8_t|static|byte|float"
8
- require 'vendor/rad/variable_processing'
9
- require 'vendor/rad/arduino_sketch'
7
+ # neee to remove this constant from tests and pull it from rad
8
+ C_VAR_TYPES = "unsigned|int|long|double|str|char|byte|float|bool"
9
+ require "#{File.expand_path(File.dirname(__FILE__))}/../lib/rad/variable_processing"
10
+ require "#{File.expand_path(File.dirname(__FILE__))}/../lib/rad/arduino_sketch"
10
11
  require 'test/unit'
11
12
 
12
13
 
@@ -81,7 +82,7 @@ class TestVariableProcessing < Test::Unit::TestCase
81
82
  def test_int_with_type
82
83
  name = "foo_i"
83
84
  value_string = "int"
84
- expected = "long __foo_i;"
85
+ expected = "int __foo_i;"
85
86
  result = @t.pre_process_vars(name, value_string)
86
87
  assert_equal(expected, result[0])
87
88
  end
@@ -94,7 +95,7 @@ class TestVariableProcessing < Test::Unit::TestCase
94
95
  assert_equal(expected, result[0])
95
96
  end
96
97
 
97
- def test_int_with_type
98
+ def test_int_with_type_two
98
99
  name = "foo_k"
99
100
  value_string = "2, int"
100
101
  expected = "int __foo_k = 2;"
@@ -134,14 +135,6 @@ class TestVariableProcessing < Test::Unit::TestCase
134
135
  assert_equal(expected, result[0])
135
136
  end
136
137
 
137
- def test_int_with_unsigned_long
138
- name = "foo_p"
139
- value_string = "2, long unsigned"
140
- expected = "long unsigned __foo_p = 2;"
141
- result = @t.pre_process_vars(name, value_string)
142
- assert_equal(expected, result[0])
143
- end
144
-
145
138
  def test_int_with_short_int
146
139
  name = "foo_q"
147
140
  value_string = "2, short int"
@@ -182,6 +175,63 @@ class TestVariableProcessing < Test::Unit::TestCase
182
175
  assert_equal(expected, result[0])
183
176
  end
184
177
 
178
+ def test_negative_int_string
179
+ name = "foo_w"
180
+ value_string = "-1, int"
181
+ expected = "int __foo_w = -1;"
182
+ result = @t.pre_process_vars(name, value_string)
183
+ assert_equal(expected, result[0])
184
+ end
185
+
186
+ def test_negative_float_string
187
+ name = "foo_x"
188
+ value_string = "-0.1, float"
189
+ expected = "float __foo_x = -0.1;"
190
+ result = @t.pre_process_vars(name, value_string)
191
+ assert_equal(expected, result[0])
192
+ end
193
+
194
+ def test_negative_larger_float_string
195
+ name = "foo_y"
196
+ value_string = "-1000.01, float"
197
+ expected = "float __foo_y = -1000.01;"
198
+ result = @t.pre_process_vars(name, value_string)
199
+ assert_equal(expected, result[0])
200
+ end
201
+
202
+ def test_negative_long_string
203
+ name = "foo_z"
204
+ value_string = "-.0991, float"
205
+ expected = "float __foo_z = -0.0991;"
206
+ result = @t.pre_process_vars(name, value_string)
207
+ assert_equal(expected, result[0])
208
+ end
209
+
210
+ def test_negative_float_string_two
211
+ name = "foo_aa"
212
+ value_string = "-.01, float"
213
+ expected = "float __foo_aa = -0.01;"
214
+ result = @t.pre_process_vars(name, value_string)
215
+ assert_equal(expected, result[0])
216
+ end
217
+
218
+ def test_negative_interter_string
219
+ name = "foo_bb"
220
+ value_string = "-.01, float"
221
+ expected = "float __foo_bb = -0.01;"
222
+ result = @t.pre_process_vars(name, value_string)
223
+ assert_equal(expected, result[0])
224
+ end
225
+
226
+ def test_dash_string
227
+ name = "foo_cc"
228
+ value_string = "-hmmm"
229
+ expected = "char* __foo_cc = \"-hmmm\";"
230
+ result = @t.pre_process_vars(name, value_string)
231
+ assert_equal(expected, result[0])
232
+ end
233
+
234
+
185
235
 
186
236
 
187
237
 
data/website/index.html CHANGED
@@ -35,12 +35,13 @@
35
35
  <a href="http://rubyforge.org/projects/rad" class="numbers">0.2.2</a>
36
36
  </div>
37
37
  <div id="buy-arduino">
38
-
39
- <a href="http://www.sparkfun.com/commerce/product_info.php?products_id=666">
40
-
41
- <img src="http://www.sparkfun.com/commerce/images/ArduinoUSBBoard-01-M.jpg" />
38
+ <h3>Sponsored by:</h3>
39
+ <h4>The Shoppe at Wulfden</h4>
40
+ <a href="http://www.wulfden.org/freeduino/freeduino.shtml">
41
+ <img src="http://www.wulfden.org/freeduino/freeduino-1.jpg" /><br />
42
42
  </a>
43
- <h4><a href="http://www.sparkfun.com/commerce/product_info.php?products_id=666">Buy an Arduino from Sparkfun</a></h4>
43
+ <h4><a href="http://www.wulfden.org/freeduino/freeduino.shtml">Totally Open Arduino-Compatible Hardware</a></h4>
44
+
44
45
 
45
46
  </div>
46
47
  </div>
@@ -76,7 +77,7 @@
76
77
  <p><code>$ sudo gem install rad</code></p>
77
78
 
78
79
 
79
- <p>You&#8217;ll also need to have the Arduino environment installed, which you can get from <a href="http://www.arduino.cc/en/Main/Software">the Arduino website</a>. <span class="caps">RAD</span> currently requires Arduino 0010, but we try to keep it up-to-date with new Arduino releases.</p>
80
+ <p>You&#8217;ll also need to have the Arduino environment installed, which you can get from <a href="http://www.arduino.cc/en/Main/Software">the Arduino website</a>. <span class="caps">RAD</span> currently requires Arduino 0011, but we try to keep it up-to-date with new Arduino releases.</p>
80
81
 
81
82
 
82
83
  <h2>The Basics</h2>
@@ -140,7 +141,7 @@ end
140
141
  <p>There&#8217;s lots to do.</p>
141
142
 
142
143
 
143
- <p>If you&#8217;re looking for a place to dive in and don&#8217;t know quite where, <a href="mailto:ruby-arduino-development@googlegroups.com">email the RAD Google Group</a>; we're friendly! If you want to start by taking a log at the code, the trunk repository is <code>svn://rubyforge.org/var/svn/rad/trunk</code> for anonymous access.</p>
144
+ <p>If you&#8217;re looking for a place to dive in and don&#8217;t know quite where, <a href="mailto:ruby-arduino-development@googlegroups.com">email the RAD Google Group</a>; we're friendly! If you want to start by taking a look at the code, check out RAD on GitHub: <code>http://github.com/atduskgreg/rad/tree/master</code>.</p>
144
145
 
145
146
 
146
147
  <h2>License</h2>
metadata CHANGED
@@ -1,37 +1,37 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: madrona-rad
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Greg Borenstein
8
- - "plugins+: JD Barnhart"
8
+ - JD Barnhart
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2008-06-25 00:00:00 -07:00
13
+ date: 2008-07-30 00:00:00 -07:00
14
14
  default_executable: rad
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
- name: mime-types
17
+ name: RubyToC
18
18
  version_requirement:
19
19
  version_requirements: !ruby/object:Gem::Requirement
20
20
  requirements:
21
- - - ">"
21
+ - - ">="
22
22
  - !ruby/object:Gem::Version
23
- version: 0.0.0
23
+ version: 1.0.0
24
24
  version:
25
25
  - !ruby/object:Gem::Dependency
26
- name: RubyToC
26
+ name: hoe
27
27
  version_requirement:
28
28
  version_requirements: !ruby/object:Gem::Requirement
29
29
  requirements:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 1.0.0
32
+ version: 1.7.0
33
33
  version:
34
- description: "Ruby Arduino Development: a framework for programming the Arduino physcial computing platform using Ruby"
34
+ description: A framework for programming the Arduino physcial computing platform using Ruby. RAD converts Ruby scripts written using a set of Rails-like conventions and helpers into C source code which can be compiled and run on the Arduino microcontroller.
35
35
  email: jd@jdbarnhart.com
36
36
  executables:
37
37
  - rad
@@ -39,8 +39,18 @@ extensions: []
39
39
 
40
40
  extra_rdoc_files:
41
41
  - History.txt
42
+ - License.txt
42
43
  - Manifest.txt
44
+ - lib/libraries/DS1307/keywords.txt
45
+ - lib/libraries/FrequencyTimer2/keywords.txt
46
+ - lib/libraries/OneWire/keywords.txt
47
+ - lib/libraries/OneWire/readme.txt
48
+ - lib/libraries/Servo/keywords.txt
49
+ - lib/libraries/Stepper/keywords.txt
50
+ - lib/libraries/Wire/keywords.txt
51
+ - lib/rad/todo.txt
43
52
  - README.rdoc
53
+ - website/index.txt
44
54
  files:
45
55
  - History.txt
46
56
  - License.txt
@@ -49,78 +59,101 @@ files:
49
59
  - Rakefile
50
60
  - bin/rad
51
61
  - lib/examples/add_hysteresis.rb
62
+ - lib/examples/blink_m_address_assignment.rb
52
63
  - lib/examples/blink_m_hello.rb
53
- - lib/examples/external_variable_fu.rb
64
+ - lib/examples/blink_m_multi.rb
65
+ - lib/examples/configure_pa_lcd_boot.rb
54
66
  - lib/examples/debounce_methods.rb
67
+ - lib/examples/external_variable_fu.rb
55
68
  - lib/examples/external_variables.rb
56
69
  - lib/examples/first_sound.rb
57
70
  - lib/examples/frequency_generator.rb
71
+ - lib/examples/hello_array.rb
72
+ - lib/examples/hello_array2.rb
73
+ - lib/examples/hello_array_eeprom.rb
58
74
  - lib/examples/hello_eeprom.rb
75
+ - lib/examples/hello_eeprom_lcdpa.rb
76
+ - lib/examples/hello_lcd_charset.rb
77
+ - lib/examples/hello_pa_lcd.rb
59
78
  - lib/examples/hello_servos.rb
60
79
  - lib/examples/hello_world.rb
80
+ - lib/examples/hysteresis_duel.rb
61
81
  - lib/examples/i2c_with_clock_chip.rb
82
+ - lib/examples/motor_knob.rb
62
83
  - lib/examples/orig_servo_throttle.rb
63
84
  - lib/examples/servo_buttons.rb
85
+ - lib/examples/servo_calibrate_continuous.rb
64
86
  - lib/examples/servo_throttle.rb
65
87
  - lib/examples/sparkfun_lcd.rb
88
+ - lib/examples/spectra_soft_pot.rb
66
89
  - lib/examples/times_method.rb
67
90
  - lib/examples/toggle.rb
68
91
  - lib/examples/two_wire.rb
69
92
  - lib/libraries/DS1307/DS1307.cpp
70
93
  - lib/libraries/DS1307/DS1307.h
71
94
  - lib/libraries/DS1307/keywords.txt
72
- - lib/libraries/FrequencyTimer2/keywords.txt
73
95
  - lib/libraries/FrequencyTimer2/FrequencyTimer2.cpp
74
96
  - lib/libraries/FrequencyTimer2/FrequencyTimer2.h
75
- - lib/libraries/OneWire/keywords.txt
97
+ - lib/libraries/FrequencyTimer2/keywords.txt
76
98
  - lib/libraries/OneWire/OneWire.cpp
77
99
  - lib/libraries/OneWire/OneWire.h
100
+ - lib/libraries/OneWire/keywords.txt
78
101
  - lib/libraries/OneWire/readme.txt
79
- - lib/libraries/Servo/keywords.txt
80
- - lib/libraries/Servo/Servo.cpp
81
- - lib/libraries/Servo/Servo.h
82
102
  - lib/libraries/SWSerLCDpa/SWSerLCDpa.cpp
83
103
  - lib/libraries/SWSerLCDpa/SWSerLCDpa.h
84
104
  - lib/libraries/SWSerLCDsf/SWSerLCDsf.cpp
85
105
  - lib/libraries/SWSerLCDsf/SWSerLCDsf.h
106
+ - lib/libraries/Servo/Servo.cpp
107
+ - lib/libraries/Servo/Servo.h
108
+ - lib/libraries/Servo/keywords.txt
109
+ - lib/libraries/Stepper/Stepper.cpp
110
+ - lib/libraries/Stepper/Stepper.h
111
+ - lib/libraries/Stepper/keywords.txt
86
112
  - lib/libraries/Wire/Wire.cpp
87
- - lib/libraries/Wire/keywords.txt
88
113
  - lib/libraries/Wire/Wire.h
114
+ - lib/libraries/Wire/keywords.txt
89
115
  - lib/libraries/Wire/twi.h
90
- - lib/libraries/Wire/utilities/twi.c
91
- - lib/libraries/Wire/utilities/twi.h
116
+ - lib/libraries/Wire/utility/twi.c
117
+ - lib/libraries/Wire/utility/twi.h
92
118
  - lib/plugins/bitwise_ops.rb
93
119
  - lib/plugins/blink_m.rb
94
120
  - lib/plugins/debounce.rb
95
121
  - lib/plugins/debug_output_to_lcd.rb
122
+ - lib/plugins/hysteresis.rb
96
123
  - lib/plugins/i2c_eeprom.rb
97
124
  - lib/plugins/input_output_state.rb
125
+ - lib/plugins/lcd_padding.rb
98
126
  - lib/plugins/mem_test.rb
99
127
  - lib/plugins/servo_pulse.rb
100
128
  - lib/plugins/servo_setup.rb
101
129
  - lib/plugins/smoother.rb
102
130
  - lib/plugins/spark_fun_serial_lcd.rb
131
+ - lib/plugins/spectra_symbol.rb
103
132
  - lib/rad.rb
104
- - lib/rad/arduino_sketch.rb
105
133
  - lib/rad/arduino_plugin.rb
134
+ - lib/rad/arduino_sketch.rb
135
+ - lib/rad/generators/makefile/makefile.erb
136
+ - lib/rad/generators/makefile/makefile.rb
137
+ - lib/rad/init.rb
106
138
  - lib/rad/rad_processor.rb
107
139
  - lib/rad/rad_rewriter.rb
108
- - lib/rad/variable_processing.rb
109
- - lib/rad/init.rb
110
- - lib/rad/todo.txt
140
+ - lib/rad/rad_type_checker.rb
141
+ - lib/rad/sim/arduino_sketch.rb
111
142
  - lib/rad/tasks/build_and_make.rake
112
143
  - lib/rad/developer.rake
113
144
  - lib/rad/tasks/rad.rb
145
+ - lib/rad/todo.txt
146
+ - lib/rad/variable_processing.rb
114
147
  - lib/rad/version.rb
115
- - lib/rad/generators/makefile/makefile.erb
116
- - lib/rad/generators/makefile/makefile.rb
117
- - lib/test/test_array_processing.rb
118
- - lib/test/test_variable_processing.rb
119
148
  - scripts/txt2html
120
149
  - setup.rb
121
150
  - spec/models/spec_helper.rb
122
151
  - spec/models/arduino_sketch_spec.rb
123
152
  - spec/spec.opts
153
+ - test/test_array_processing.rb
154
+ - test/test_plugin_loading.rb
155
+ - test/test_translation_post_processing.rb
156
+ - test/test_variable_processing.rb
124
157
  - website/index.html
125
158
  - website/index.txt
126
159
  - website/javascripts/rounded_corners_lite.inc.js
@@ -131,7 +164,7 @@ files:
131
164
  - website/examples/hello_world.rb.html
132
165
  - website/examples/serial_motor.rb.html
133
166
  has_rdoc: true
134
- homepage: http://github.com/madrona/rad
167
+ homepage: http://rad.rubyforge.org
135
168
  post_install_message:
136
169
  rdoc_options:
137
170
  - --main
@@ -156,6 +189,9 @@ rubyforge_project: rad
156
189
  rubygems_version: 1.2.0
157
190
  signing_key:
158
191
  specification_version: 2
159
- summary: Fork of the Ruby Arduino Development - 0.2.5.1.0
160
- test_files: []
161
-
192
+ summary: A framework for programming the Arduino physcial computing platform using Ruby. RAD converts Ruby scripts written using a set of Rails-like conventions and helpers into C source code which can be compiled and run on the Arduino microcontroller.
193
+ test_files:
194
+ - test/test_array_processing.rb
195
+ - test/test_plugin_loading.rb
196
+ - test/test_translation_post_processing.rb
197
+ - test/test_variable_processing.rb