fancy 0.3.3 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (182) hide show
  1. data/README.md +14 -14
  2. data/Rakefile +16 -4
  3. data/bin/fancy +3 -0
  4. data/bin/fspec +20 -0
  5. data/bin/fyi +27 -11
  6. data/bin/ifancy +1 -1
  7. data/boot/fancy_ext.rb +1 -0
  8. data/boot/fancy_ext/block_env.rb +1 -9
  9. data/boot/fancy_ext/delegator.rb +64 -0
  10. data/boot/fancy_ext/object.rb +4 -0
  11. data/boot/fancy_ext/thread.rb +4 -0
  12. data/boot/load.rb +5 -1
  13. data/boot/rbx-compiler/compiler/ast.rb +0 -1
  14. data/boot/rbx-compiler/compiler/ast/class_def.rb +2 -0
  15. data/boot/rbx-compiler/compiler/ast/method_def.rb +2 -0
  16. data/boot/rbx-compiler/compiler/ast/node.rb +10 -0
  17. data/boot/rbx-compiler/compiler/ast/ruby_args.rb +12 -0
  18. data/boot/rbx-compiler/compiler/ast/singleton_method_def.rb +2 -0
  19. data/boot/rbx-compiler/parser/fancy_parser.bundle +0 -0
  20. data/boot/rbx-compiler/parser/lexer.lex +5 -11
  21. data/boot/rbx-compiler/parser/parser.rb +16 -5
  22. data/boot/rbx-compiler/parser/parser.y +39 -24
  23. data/doc/api/fancy.css +1 -1
  24. data/doc/api/fancy.jsonp +1 -1
  25. data/doc/api/fdoc.js +22 -4
  26. data/doc/api/index.html +5 -6
  27. data/doc/api/jquery-ui.min.js +401 -0
  28. data/doc/api/jquery.tools.min.js +192 -0
  29. data/doc/api/themeswitchertool.js +250 -0
  30. data/doc/features.md +17 -0
  31. data/examples/actor_bunnies.fy +32 -0
  32. data/examples/actors.fy +26 -0
  33. data/examples/actors_primitive.fy +27 -0
  34. data/examples/actors_ring.fy +37 -0
  35. data/examples/armstrong_numbers.fy +1 -1
  36. data/examples/array.fy +7 -9
  37. data/examples/async_send.fy +1 -2
  38. data/examples/blocks.fy +4 -4
  39. data/examples/call_with_receiver.fy +1 -1
  40. data/examples/class.fy +1 -1
  41. data/examples/default_args.fy +4 -1
  42. data/examples/define_methods.fy +2 -2
  43. data/examples/echo.fy +1 -1
  44. data/examples/factorial.fy +1 -1
  45. data/examples/future_composition.fy +2 -2
  46. data/examples/futures.fy +0 -5
  47. data/examples/game_of_life.fy +1 -1
  48. data/examples/person.fy +1 -1
  49. data/lib/argv.fy +7 -2
  50. data/lib/array.fy +109 -42
  51. data/lib/block.fy +39 -14
  52. data/lib/boot.fy +2 -0
  53. data/lib/class.fy +2 -0
  54. data/lib/compiler/ast.fy +2 -1
  55. data/lib/compiler/ast/assign.fy +2 -3
  56. data/lib/compiler/ast/async_send.fy +1 -15
  57. data/lib/compiler/ast/class_def.fy +2 -1
  58. data/lib/compiler/ast/expression_list.fy +4 -5
  59. data/lib/compiler/ast/future_send.fy +1 -10
  60. data/lib/compiler/ast/goto.fy +46 -0
  61. data/lib/compiler/ast/identifier.fy +9 -7
  62. data/lib/compiler/ast/literals.fy +8 -1
  63. data/lib/compiler/ast/match.fy +14 -4
  64. data/lib/compiler/ast/message_send.fy +34 -6
  65. data/lib/compiler/ast/method_def.fy +6 -6
  66. data/lib/compiler/ast/node.fy +3 -3
  67. data/lib/compiler/ast/range.fy +1 -0
  68. data/lib/compiler/ast/script.fy +0 -2
  69. data/lib/compiler/ast/singleton_method_def.fy +2 -4
  70. data/lib/compiler/ast/string_interpolation.fy +17 -0
  71. data/lib/compiler/ast/super.fy +5 -4
  72. data/lib/compiler/ast/try_catch.fy +8 -6
  73. data/lib/compiler/ast/tuple_literal.fy +3 -2
  74. data/lib/compiler/command.fy +0 -1
  75. data/lib/compiler/compiler.fy +1 -5
  76. data/lib/compiler/stages.fy +6 -14
  77. data/lib/documentation.fy +57 -46
  78. data/lib/enumerable.fy +257 -23
  79. data/lib/enumerator.fy +122 -15
  80. data/lib/false_class.fy +10 -1
  81. data/lib/fancy_spec.fy +263 -61
  82. data/lib/fdoc.fy +11 -25
  83. data/lib/fiber.fy +11 -0
  84. data/lib/file.fy +8 -11
  85. data/lib/future.fy +84 -5
  86. data/lib/hash.fy +65 -14
  87. data/lib/integer.fy +35 -0
  88. data/lib/iteration.fy +54 -29
  89. data/lib/message.fy +6 -0
  90. data/lib/method.fy +0 -16
  91. data/lib/nil_class.fy +58 -8
  92. data/lib/number.fy +49 -22
  93. data/lib/object.fy +371 -65
  94. data/lib/package.fy +24 -1
  95. data/lib/package/installer.fy +5 -9
  96. data/lib/package/specification.fy +2 -2
  97. data/lib/parser/ext/lexer.lex +15 -11
  98. data/lib/parser/ext/parser.y +70 -23
  99. data/lib/parser/methods.fy +33 -14
  100. data/lib/proxy.fy +33 -3
  101. data/lib/range.fy +28 -0
  102. data/lib/rbx.fy +3 -1
  103. data/lib/rbx/actor.fy +53 -0
  104. data/lib/rbx/alpha.fy +31 -0
  105. data/lib/rbx/array.fy +21 -12
  106. data/lib/rbx/bignum.fy +6 -2
  107. data/lib/rbx/block.fy +23 -26
  108. data/lib/rbx/class.fy +54 -2
  109. data/lib/rbx/code_loader.fy +8 -4
  110. data/lib/rbx/date.fy +9 -0
  111. data/lib/rbx/directory.fy +18 -0
  112. data/lib/rbx/environment_variables.fy +1 -0
  113. data/lib/rbx/exception.fy +9 -2
  114. data/lib/rbx/fiber.fy +22 -4
  115. data/lib/rbx/file.fy +5 -5
  116. data/lib/rbx/fixnum.fy +5 -0
  117. data/lib/rbx/float.fy +11 -3
  118. data/lib/rbx/hash.fy +31 -16
  119. data/lib/rbx/integer.fy +1 -0
  120. data/lib/rbx/io.fy +17 -7
  121. data/lib/rbx/match_data.fy +15 -4
  122. data/lib/rbx/method.fy +40 -7
  123. data/lib/rbx/name_error.fy +4 -0
  124. data/lib/rbx/object.fy +92 -24
  125. data/lib/rbx/range.fy +20 -6
  126. data/lib/rbx/regexp.fy +11 -3
  127. data/lib/rbx/string.fy +51 -1
  128. data/lib/rbx/stringio.fy +17 -0
  129. data/lib/rbx/symbol.fy +15 -1
  130. data/lib/rbx/system.fy +20 -2
  131. data/lib/rbx/tcp_server.fy +4 -1
  132. data/lib/rbx/tcp_socket.fy +11 -0
  133. data/lib/rbx/time.fy +6 -0
  134. data/lib/rbx/tuple.fy +14 -5
  135. data/lib/set.fy +144 -29
  136. data/lib/stack.fy +42 -11
  137. data/lib/string.fy +118 -8
  138. data/lib/struct.fy +13 -3
  139. data/lib/symbol.fy +21 -2
  140. data/lib/thread_pool.fy +2 -1
  141. data/lib/true_class.fy +45 -7
  142. data/lib/tuple.fy +27 -9
  143. data/lib/version.fy +2 -2
  144. data/ruby_lib/fancy +43 -0
  145. data/ruby_lib/fdoc +23 -0
  146. data/ruby_lib/fspec +3 -0
  147. data/ruby_lib/fyi +3 -0
  148. data/ruby_lib/ifancy +3 -0
  149. data/tests/argv.fy +5 -9
  150. data/tests/array.fy +323 -196
  151. data/tests/assignment.fy +29 -29
  152. data/tests/block.fy +72 -59
  153. data/tests/class.fy +227 -138
  154. data/tests/control_flow.fy +83 -51
  155. data/tests/documentation.fy +8 -8
  156. data/tests/enumerable.fy +8 -0
  157. data/tests/enumerator.fy +47 -29
  158. data/tests/exception.fy +49 -32
  159. data/tests/file.fy +28 -28
  160. data/tests/fixnum.fy +170 -0
  161. data/tests/future.fy +24 -7
  162. data/tests/hash.fy +55 -38
  163. data/tests/method.fy +50 -43
  164. data/tests/nil_class.fy +37 -37
  165. data/tests/object.fy +152 -70
  166. data/tests/pattern_matching.fy +67 -31
  167. data/tests/range.fy +6 -6
  168. data/tests/set.fy +101 -4
  169. data/tests/stack.fy +14 -5
  170. data/tests/string.fy +115 -61
  171. data/tests/stringio.fy +18 -0
  172. data/tests/struct.fy +27 -0
  173. data/tests/symbol.fy +19 -6
  174. data/tests/true_class.fy +34 -34
  175. data/tests/tuple.fy +30 -12
  176. metadata +103 -81
  177. data/boot/rbx-compiler/compiler/ast/require.rb +0 -20
  178. data/examples/actor.fy +0 -37
  179. data/examples/curl_async.fy +0 -37
  180. data/lib/compiler/ast/require.fy +0 -15
  181. data/tests/number.fy +0 -135
  182. data/tests/parsing/sexp.fy +0 -50
@@ -0,0 +1,18 @@
1
+ require: "rbx/stringio"
2
+
3
+ FancySpec describe: StringIO with: {
4
+ before_each: {
5
+ @s = StringIO new
6
+ }
7
+
8
+ it: "returns the empty string on initialization" with: 'string when: {
9
+ @s string is: ""
10
+ }
11
+
12
+ it: "appends strings to its string value" with: '<< when: {
13
+ @s << "foo"
14
+ @s << "\n"
15
+ @s << "bar"
16
+ @s string is: "foo\nbar"
17
+ }
18
+ }
@@ -0,0 +1,27 @@
1
+ FancySpec describe: Struct with: {
2
+ Point = Struct new: ('x, 'y)
3
+
4
+ it: "creates a struct class" when: {
5
+ Point is_a?: Class . is: true
6
+ }
7
+
8
+ it: "creates setter methods for a struct's fields" when: {
9
+ Point instance_methods includes?: "x:" . is: true
10
+ Point instance_methods includes?: "y:" . is: true
11
+ }
12
+
13
+ it: "creates getter methods for a struct's fields" when: {
14
+ Point instance_methods includes?: ":x" . is: true
15
+ Point instance_methods includes?: ":y" . is: true
16
+ }
17
+
18
+ it: "works with getter and setter methods as expected" when: {
19
+ p = Point new: (2, 3)
20
+ p x is: 2
21
+ p y is: 3
22
+ p x: 10
23
+ p y: 20
24
+ p x is: 10
25
+ p y is: 20
26
+ }
27
+ }
@@ -1,17 +1,30 @@
1
1
  FancySpec describe: Symbol with: {
2
- it: "should be usable like a block for Enumerable methods" when: {
2
+ it: "is usable like a block for Enumerable methods" with: 'call: when: {
3
3
  [1,2,3,4,5] map: 'squared .
4
- should == [1,4,9,16,25]
4
+ is: [1,4,9,16,25]
5
5
 
6
6
  ["hello", "world"] map: 'upcase .
7
- should == ["HELLO", "WORLD"]
7
+ is: ["HELLO", "WORLD"]
8
8
 
9
9
  [1,2,3,4,5] select: 'even? .
10
- should == [2,4]
10
+ is: [2,4]
11
11
  }
12
12
 
13
- it: "should evaluate itself within the current scope" when: {
13
+ it: "evaluates itself within the current scope" with: 'eval when: {
14
14
  x = 10
15
- 'x eval should == x
15
+ 'x eval is: x
16
+ }
17
+
18
+ it: "sends itself to the sender in its context" with: 'call when: {
19
+ def foo {
20
+ "foo"
21
+ }
22
+ def bar {
23
+ "bar"
24
+ }
25
+ x = false
26
+ if: x then: 'foo else: 'bar . is: "bar"
27
+ x = true
28
+ if: x then: 'foo else: 'bar . is: "foo"
16
29
  }
17
30
  }
@@ -1,63 +1,63 @@
1
1
  FancySpec describe: TrueClass with: {
2
- it: "should be true for calling and: with non-nil value" for: 'and: when: {
3
- true and: true . should == true
4
- true and: 'bar . should == 'bar
2
+ it: "is true for calling and: with non-nil value" with: 'and: when: {
3
+ true and: true . is: true
4
+ true and: 'bar . is: 'bar
5
5
  }
6
6
 
7
- it: "should be false for calling and: with a nil value" for: 'and: when: {
8
- true and: nil . should == nil
7
+ it: "is false for calling and: with a nil value" with: 'and: when: {
8
+ true and: nil . is: nil
9
9
  }
10
10
 
11
- it: "should be true for calling && with non-nil value" for: '&& when: {
12
- (true && true) should == true
13
- (true && 'bar) should == 'bar
11
+ it: "is true for calling && with non-nil value" with: '&& when: {
12
+ (true && true) is: true
13
+ (true && 'bar) is: 'bar
14
14
  }
15
15
 
16
- it: "should be false for calling && with a nil value" for: '&& when: {
17
- (true && nil) should == nil
16
+ it: "is false for calling && with a nil value" with: '&& when: {
17
+ (true && nil) is: nil
18
18
  }
19
19
 
20
- it: "should be true for calling or: with both non-nil values" for: 'or: when: {
21
- true or: true . should == true
20
+ it: "is true for calling or: with both non-nil values" with: 'or: when: {
21
+ true or: true . is: true
22
22
  }
23
23
 
24
- it: "should be true for calling or: with any values" for: 'or: when: {
25
- true or: nil . should == true
26
- true or: true . should == true
27
- true or: 'foo . should == true
24
+ it: "is true for calling or: with any values" with: 'or: when: {
25
+ true or: nil . is: true
26
+ true or: true . is: true
27
+ true or: 'foo . is: true
28
28
  }
29
29
 
30
- it: "should be true for calling || with both non-nil values" for: '|| when: {
31
- (true || true) should == true
30
+ it: "is true for calling || with both non-nil values" with: '|| when: {
31
+ (true || true) is: true
32
32
  }
33
33
 
34
- it: "should be true for calling || with any values" for: '|| when: {
35
- (true || nil) should == true
36
- (true || true) should == true
37
- (true || 'foo) should == true
34
+ it: "is true for calling || with any values" with: '|| when: {
35
+ (true || nil) is: true
36
+ (true || true) is: true
37
+ (true || 'foo) is: true
38
38
  }
39
39
 
40
- it: "should call the then-block" for: 'if_true:else: when: {
41
- true if_true: { 'then } else: { 'else } . should == 'then
40
+ it: "calls the then-block" with: 'if_true:else: when: {
41
+ true if_true: { 'then } else: { 'else } . is: 'then
42
42
  }
43
43
 
44
- it: "should NOT call the block" for: 'if_false: when: {
45
- true if_false: { 'false } . should == nil
44
+ it: "does not call the block" with: 'if_false: when: {
45
+ true if_false: { 'false } . is: nil
46
46
  }
47
47
 
48
- it: "should NOT be nil" for: 'nil? when: {
49
- true nil? should == false
48
+ it: "is not nil" with: 'nil? when: {
49
+ true nil? is: false
50
50
  }
51
51
 
52
- it: "should NOT be false" for: 'false? when: {
53
- true false? should == false
52
+ it: "is not false" with: 'false? when: {
53
+ true false? is: false
54
54
  }
55
55
 
56
- it: "should be true" for: 'true? when: {
57
- true true? should == true
56
+ it: "is true" with: 'true? when: {
57
+ true true? is: true
58
58
  }
59
59
 
60
- it: "should NOT call the block if true" for: 'if_nil: when: {
61
- true if_nil: { 'is_nil } . should == nil
60
+ it: "does NOT call the block if true" with: 'if_nil: when: {
61
+ true if_nil: { 'is_nil } . is: nil
62
62
  }
63
63
  }
@@ -1,21 +1,39 @@
1
1
  FancySpec describe: Tuple with: {
2
- it: "have the correct amount of elements" for: 'size when: {
3
- (1,2) size should == 2
4
- (1,2,3) size should == 3
5
- ('foo, "bar", 'baz, 123) size should == 4
2
+ it: "has the correct amount of elements" with: 'size when: {
3
+ (1,2) size is: 2
4
+ (1,2,3) size is: 3
5
+ ('foo, "bar", 'baz, 123) size is: 4
6
6
  }
7
7
 
8
- it: "should have the correct items at a given index" for: 'at: when: {
8
+ it: "has the correct items at a given index" with: 'at: when: {
9
9
  tuple = ("foo", 'bar, "baz")
10
- tuple at: 0 . should == "foo"
11
- tuple at: 1 . should == 'bar
12
- tuple at: 2 . should == "baz"
10
+ tuple at: 0 . is: "foo"
11
+ tuple at: 1 . is: 'bar
12
+ tuple at: 2 . is: "baz"
13
13
  }
14
14
 
15
- it: "should have the correct items at a given index" for: '[] when: {
15
+ it: "has the correct items at a given index" with: '[] when: {
16
16
  tuple = ("foo", 'bar, "baz")
17
- tuple[0] . should == "foo"
18
- tuple[1] . should == 'bar
19
- tuple[2] . should == "baz"
17
+ tuple[0] . is: "foo"
18
+ tuple[1] . is: 'bar
19
+ tuple[2] . is: "baz"
20
+ }
21
+
22
+ it: "creates a new tuple with values set to nil" with: 'new: when: {
23
+ t = Tuple new: 2
24
+ t size is: 2
25
+ t[0] is: nil
26
+ t[1] is: nil
27
+ }
28
+
29
+ it: "does not allow to create an empty Tuple" with: 'new when: {
30
+ { Tuple new } raises: ArgumentError
31
+ }
32
+
33
+ it: "does not allow to create a Tuple with less than 2 elements" with: 'new: when: {
34
+ { Tuple new: -1 } raises: ArgumentError
35
+ { Tuple new: 0 } raises: ArgumentError
36
+ { Tuple new: 1 } raises: ArgumentError
37
+ { Tuple new: 2 } does_not raise: ArgumentError
20
38
  }
21
39
  }
metadata CHANGED
@@ -1,21 +1,21 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fancy
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
4
+ hash: 15
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 3
9
- - 3
10
- version: 0.3.3
8
+ - 4
9
+ - 0
10
+ version: 0.4.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Christopher Bertels
14
14
  autorequire:
15
- bindir: bin
15
+ bindir: ruby_lib
16
16
  cert_chain: []
17
17
 
18
- date: 2011-04-28 00:00:00 -07:00
18
+ date: 2011-08-30 00:00:00 -07:00
19
19
  default_executable:
20
20
  dependencies: []
21
21
 
@@ -37,6 +37,7 @@ executables:
37
37
  - ifancy
38
38
  - fdoc
39
39
  - fyi
40
+ - fspec
40
41
  extensions:
41
42
  - boot/extconf.rb
42
43
  extra_rdoc_files: []
@@ -48,35 +49,16 @@ files:
48
49
  - Rakefile
49
50
  - boot/extconf.rb
50
51
  - ruby_lib/fancy.rb
52
+ - ruby_lib/fancy
53
+ - ruby_lib/ifancy
54
+ - ruby_lib/fdoc
55
+ - ruby_lib/fyi
56
+ - ruby_lib/fspec
51
57
  - lib/argv.fy
52
58
  - lib/array.fy
53
59
  - lib/block.fy
54
60
  - lib/boot.fy
55
61
  - lib/class.fy
56
- - lib/compiler/ast/assign.fy
57
- - lib/compiler/ast/async_send.fy
58
- - lib/compiler/ast/block.fy
59
- - lib/compiler/ast/class_def.fy
60
- - lib/compiler/ast/expression_list.fy
61
- - lib/compiler/ast/future_send.fy
62
- - lib/compiler/ast/identifier.fy
63
- - lib/compiler/ast/literals.fy
64
- - lib/compiler/ast/match.fy
65
- - lib/compiler/ast/message_send.fy
66
- - lib/compiler/ast/method_def.fy
67
- - lib/compiler/ast/node.fy
68
- - lib/compiler/ast/range.fy
69
- - lib/compiler/ast/require.fy
70
- - lib/compiler/ast/return.fy
71
- - lib/compiler/ast/script.fy
72
- - lib/compiler/ast/singleton_method_def.fy
73
- - lib/compiler/ast/super.fy
74
- - lib/compiler/ast/try_catch.fy
75
- - lib/compiler/ast/tuple_literal.fy
76
- - lib/compiler/ast.fy
77
- - lib/compiler/command.fy
78
- - lib/compiler/compiler.fy
79
- - lib/compiler/stages.fy
80
62
  - lib/compiler.fy
81
63
  - lib/directory.fy
82
64
  - lib/documentation.fy
@@ -92,22 +74,41 @@ files:
92
74
  - lib/file.fy
93
75
  - lib/future.fy
94
76
  - lib/hash.fy
77
+ - lib/integer.fy
95
78
  - lib/iteration.fy
96
79
  - lib/main.fy
80
+ - lib/message.fy
97
81
  - lib/method.fy
98
82
  - lib/nil_class.fy
99
83
  - lib/number.fy
100
84
  - lib/object.fy
85
+ - lib/package.fy
86
+ - lib/parser.fy
87
+ - lib/proxy.fy
88
+ - lib/range.fy
89
+ - lib/rbx.fy
90
+ - lib/set.fy
91
+ - lib/stack.fy
92
+ - lib/string.fy
93
+ - lib/struct.fy
94
+ - lib/symbol.fy
95
+ - lib/thread_pool.fy
96
+ - lib/true_class.fy
97
+ - lib/tuple.fy
98
+ - lib/version.fy
99
+ - lib/compiler/ast.fy
100
+ - lib/compiler/command.fy
101
+ - lib/compiler/compiler.fy
102
+ - lib/compiler/stages.fy
101
103
  - lib/package/dependency.fy
102
104
  - lib/package/installer.fy
103
105
  - lib/package/list.fy
104
106
  - lib/package/specification.fy
105
107
  - lib/package/uninstaller.fy
106
- - lib/package.fy
107
108
  - lib/parser/methods.fy
108
109
  - lib/parser/parse_error.fy
109
- - lib/parser.fy
110
- - lib/proxy.fy
110
+ - lib/rbx/actor.fy
111
+ - lib/rbx/alpha.fy
111
112
  - lib/rbx/array.fy
112
113
  - lib/rbx/bignum.fy
113
114
  - lib/rbx/block.fy
@@ -134,6 +135,7 @@ files:
134
135
  - lib/rbx/range.fy
135
136
  - lib/rbx/regexp.fy
136
137
  - lib/rbx/string.fy
138
+ - lib/rbx/stringio.fy
137
139
  - lib/rbx/symbol.fy
138
140
  - lib/rbx/system.fy
139
141
  - lib/rbx/tcp_server.fy
@@ -141,16 +143,27 @@ files:
141
143
  - lib/rbx/thread.fy
142
144
  - lib/rbx/time.fy
143
145
  - lib/rbx/tuple.fy
144
- - lib/rbx.fy
145
- - lib/set.fy
146
- - lib/stack.fy
147
- - lib/string.fy
148
- - lib/struct.fy
149
- - lib/symbol.fy
150
- - lib/thread_pool.fy
151
- - lib/true_class.fy
152
- - lib/tuple.fy
153
- - lib/version.fy
146
+ - lib/compiler/ast/assign.fy
147
+ - lib/compiler/ast/async_send.fy
148
+ - lib/compiler/ast/block.fy
149
+ - lib/compiler/ast/class_def.fy
150
+ - lib/compiler/ast/expression_list.fy
151
+ - lib/compiler/ast/future_send.fy
152
+ - lib/compiler/ast/goto.fy
153
+ - lib/compiler/ast/identifier.fy
154
+ - lib/compiler/ast/literals.fy
155
+ - lib/compiler/ast/match.fy
156
+ - lib/compiler/ast/message_send.fy
157
+ - lib/compiler/ast/method_def.fy
158
+ - lib/compiler/ast/node.fy
159
+ - lib/compiler/ast/range.fy
160
+ - lib/compiler/ast/return.fy
161
+ - lib/compiler/ast/script.fy
162
+ - lib/compiler/ast/singleton_method_def.fy
163
+ - lib/compiler/ast/string_interpolation.fy
164
+ - lib/compiler/ast/super.fy
165
+ - lib/compiler/ast/try_catch.fy
166
+ - lib/compiler/ast/tuple_literal.fy
154
167
  - lib/parser/ext/ext.c
155
168
  - lib/parser/ext/ext.h
156
169
  - lib/parser/ext/extconf.rb
@@ -164,21 +177,23 @@ files:
164
177
  - tests/class.fy
165
178
  - tests/control_flow.fy
166
179
  - tests/documentation.fy
180
+ - tests/enumerable.fy
167
181
  - tests/enumerator.fy
168
182
  - tests/exception.fy
169
183
  - tests/file.fy
184
+ - tests/fixnum.fy
170
185
  - tests/future.fy
171
186
  - tests/hash.fy
172
187
  - tests/method.fy
173
188
  - tests/nil_class.fy
174
- - tests/number.fy
175
189
  - tests/object.fy
176
- - tests/parsing/sexp.fy
177
190
  - tests/pattern_matching.fy
178
191
  - tests/range.fy
179
192
  - tests/set.fy
180
193
  - tests/stack.fy
181
194
  - tests/string.fy
195
+ - tests/stringio.fy
196
+ - tests/struct.fy
182
197
  - tests/symbol.fy
183
198
  - tests/true_class.fy
184
199
  - tests/tuple.fy
@@ -187,7 +202,11 @@ files:
187
202
  - bin/fdoc
188
203
  - bin/fyi
189
204
  - bin/ifancy
190
- - examples/actor.fy
205
+ - bin/fspec
206
+ - examples/actor_bunnies.fy
207
+ - examples/actors.fy
208
+ - examples/actors_primitive.fy
209
+ - examples/actors_ring.fy
191
210
  - examples/argv.fy
192
211
  - examples/arithmetic.fy
193
212
  - examples/armstrong_numbers.fy
@@ -199,7 +218,6 @@ files:
199
218
  - examples/class.fy
200
219
  - examples/closures.fy
201
220
  - examples/constant_access.fy
202
- - examples/curl_async.fy
203
221
  - examples/default_args.fy
204
222
  - examples/define_methods.fy
205
223
  - examples/documentation.fy
@@ -226,6 +244,17 @@ files:
226
244
  - examples/numbers.fy
227
245
  - examples/pattern_matching.fy
228
246
  - examples/person.fy
247
+ - examples/regex.fy
248
+ - examples/require.fy
249
+ - examples/retry.fy
250
+ - examples/return.fy
251
+ - examples/ruby_require.fy
252
+ - examples/ruby_send.fy
253
+ - examples/singleton_methods.fy
254
+ - examples/struct.fy
255
+ - examples/stupid_quicksort.fy
256
+ - examples/threads.fy
257
+ - examples/tuple.fy
229
258
  - examples/project-euler/01.fy
230
259
  - examples/project-euler/02.fy
231
260
  - examples/project-euler/28.fy
@@ -239,35 +268,47 @@ files:
239
268
  - examples/rbx/nested_classes.fy
240
269
  - examples/rbx/require.fy
241
270
  - examples/rbx/strings.fy
242
- - examples/regex.fy
243
- - examples/require.fy
244
- - examples/retry.fy
245
- - examples/return.fy
246
- - examples/ruby_require.fy
247
- - examples/ruby_send.fy
248
- - examples/singleton_methods.fy
249
- - examples/struct.fy
250
- - examples/stupid_quicksort.fy
251
- - examples/threads.fy
252
- - examples/tuple.fy
253
271
  - examples/webserver/webserver.fy
272
+ - doc/features.md
254
273
  - doc/api/fancy.css
255
274
  - doc/api/fancy.jsonp
256
275
  - doc/api/fdoc.js
257
276
  - doc/api/index.html
277
+ - doc/api/jquery-ui.min.js
278
+ - doc/api/jquery.tools.min.js
279
+ - doc/api/themeswitchertool.js
258
280
  - doc/api/underscore-min.js
259
- - doc/features.md
260
281
  - boot/code_loader.rb
261
282
  - boot/compile.fy
283
+ - boot/fancy_ext.rb
284
+ - boot/load.rb
285
+ - boot/README
286
+ - boot/rsexp_pretty_printer.rb
262
287
  - boot/fancy_ext/block_env.rb
263
288
  - boot/fancy_ext/class.rb
264
289
  - boot/fancy_ext/console.rb
290
+ - boot/fancy_ext/delegator.rb
265
291
  - boot/fancy_ext/kernel.rb
266
292
  - boot/fancy_ext/module.rb
267
293
  - boot/fancy_ext/object.rb
268
294
  - boot/fancy_ext/string_helper.rb
269
- - boot/fancy_ext.rb
270
- - boot/load.rb
295
+ - boot/fancy_ext/thread.rb
296
+ - boot/rbx-compiler/compiler.rb
297
+ - boot/rbx-compiler/parser.rb
298
+ - boot/rbx-compiler/README
299
+ - boot/rbx-compiler/compiler/ast.rb
300
+ - boot/rbx-compiler/compiler/command.rb
301
+ - boot/rbx-compiler/compiler/compiler.rb
302
+ - boot/rbx-compiler/compiler/stages.rb
303
+ - boot/rbx-compiler/parser/extconf.rb
304
+ - boot/rbx-compiler/parser/fancy_parser.bundle
305
+ - boot/rbx-compiler/parser/fancy_parser.c
306
+ - boot/rbx-compiler/parser/fancy_parser.h
307
+ - boot/rbx-compiler/parser/lexer.lex
308
+ - boot/rbx-compiler/parser/parser.rb
309
+ - boot/rbx-compiler/parser/parser.y
310
+ - boot/rbx-compiler/parser/Rakefile
311
+ - boot/rbx-compiler/parser/README
271
312
  - boot/rbx-compiler/compiler/ast/array_literal.rb
272
313
  - boot/rbx-compiler/compiler/ast/assign.rb
273
314
  - boot/rbx-compiler/compiler/ast/block.rb
@@ -281,7 +322,6 @@ files:
281
322
  - boot/rbx-compiler/compiler/ast/node.rb
282
323
  - boot/rbx-compiler/compiler/ast/range_literal.rb
283
324
  - boot/rbx-compiler/compiler/ast/README
284
- - boot/rbx-compiler/compiler/ast/require.rb
285
325
  - boot/rbx-compiler/compiler/ast/return.rb
286
326
  - boot/rbx-compiler/compiler/ast/ruby_args.rb
287
327
  - boot/rbx-compiler/compiler/ast/script.rb
@@ -290,24 +330,6 @@ files:
290
330
  - boot/rbx-compiler/compiler/ast/super.rb
291
331
  - boot/rbx-compiler/compiler/ast/try_catch_block.rb
292
332
  - boot/rbx-compiler/compiler/ast/tuple_literal.rb
293
- - boot/rbx-compiler/compiler/ast.rb
294
- - boot/rbx-compiler/compiler/command.rb
295
- - boot/rbx-compiler/compiler/compiler.rb
296
- - boot/rbx-compiler/compiler/stages.rb
297
- - boot/rbx-compiler/compiler.rb
298
- - boot/rbx-compiler/parser/extconf.rb
299
- - boot/rbx-compiler/parser/fancy_parser.bundle
300
- - boot/rbx-compiler/parser/fancy_parser.c
301
- - boot/rbx-compiler/parser/fancy_parser.h
302
- - boot/rbx-compiler/parser/lexer.lex
303
- - boot/rbx-compiler/parser/parser.rb
304
- - boot/rbx-compiler/parser/parser.y
305
- - boot/rbx-compiler/parser/Rakefile
306
- - boot/rbx-compiler/parser/README
307
- - boot/rbx-compiler/parser.rb
308
- - boot/rbx-compiler/README
309
- - boot/README
310
- - boot/rsexp_pretty_printer.rb
311
333
  has_rdoc: true
312
334
  homepage: http://www.fancy-lang.org
313
335
  licenses:
@@ -338,7 +360,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
338
360
  requirements: []
339
361
 
340
362
  rubyforge_project: fancy
341
- rubygems_version: 1.5.0
363
+ rubygems_version: 1.5.2
342
364
  signing_key:
343
365
  specification_version: 3
344
366
  summary: The Fancy Programming Language