myco 0.1.9 → 0.1.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/lib/myco/bootstrap.my.rb +50 -14
  3. data/lib/myco/bootstrap/add_method.rb +5 -5
  4. data/lib/myco/bootstrap/meme.rb +2 -1
  5. data/lib/myco/code_tools/AST.my.rb +211 -43
  6. data/lib/myco/code_tools/AST/ArgumentAssembly.my.rb +92 -48
  7. data/lib/myco/code_tools/AST/ArrayAssembly.my.rb +39 -27
  8. data/lib/myco/code_tools/AST/Block.my.rb +176 -112
  9. data/lib/myco/code_tools/AST/BlockArgument.my.rb +29 -17
  10. data/lib/myco/code_tools/AST/BlockLiteral.my.rb +37 -17
  11. data/lib/myco/code_tools/AST/BlockParameter.my.rb +25 -9
  12. data/lib/myco/code_tools/AST/BranchOperator.my.rb +95 -75
  13. data/lib/myco/code_tools/AST/ConstantAccess.my.rb +52 -32
  14. data/lib/myco/code_tools/AST/ConstantAssignment.my.rb +52 -36
  15. data/lib/myco/code_tools/AST/ConstantDefine.my.rb +50 -26
  16. data/lib/myco/code_tools/AST/DeclareCategory.my.rb +38 -18
  17. data/lib/myco/code_tools/AST/DeclareExtension.my.rb +29 -13
  18. data/lib/myco/code_tools/AST/DeclareFile.my.rb +51 -31
  19. data/lib/myco/code_tools/AST/DeclareMeme.my.rb +96 -68
  20. data/lib/myco/code_tools/AST/DeclareObject.my.rb +66 -42
  21. data/lib/myco/code_tools/AST/DeclareString.my.rb +39 -19
  22. data/lib/myco/code_tools/AST/DeclaredScope.my.rb +92 -64
  23. data/lib/myco/code_tools/AST/Invoke.my +8 -4
  24. data/lib/myco/code_tools/AST/Invoke.my.rb +74 -31
  25. data/lib/myco/code_tools/AST/InvokeMethod.my.rb +34 -14
  26. data/lib/myco/code_tools/AST/KeywordAssembly.my.rb +36 -24
  27. data/lib/myco/code_tools/AST/KeywordOptionalParameter.my.rb +28 -8
  28. data/lib/myco/code_tools/AST/KeywordRequiredParameter.my.rb +23 -7
  29. data/lib/myco/code_tools/AST/KeywordRestParameter.my.rb +23 -7
  30. data/lib/myco/code_tools/AST/LocalVariableAccessAmbiguous.my.rb +24 -12
  31. data/lib/myco/code_tools/AST/LocalVariableAssignment.my.rb +30 -10
  32. data/lib/myco/code_tools/AST/Node.my.rb +234 -102
  33. data/lib/myco/code_tools/AST/NumericLiteral.my.rb +18 -6
  34. data/lib/myco/code_tools/AST/OptionalParameter.my.rb +33 -13
  35. data/lib/myco/code_tools/AST/ParameterAssembly.my.rb +275 -211
  36. data/lib/myco/code_tools/AST/PipeOperator.my.rb +42 -18
  37. data/lib/myco/code_tools/AST/Quest.my.rb +65 -37
  38. data/lib/myco/code_tools/AST/RequiredParameter.my.rb +20 -4
  39. data/lib/myco/code_tools/AST/RestParameter.my.rb +20 -4
  40. data/lib/myco/code_tools/AST/Script.my.rb +51 -23
  41. data/lib/myco/code_tools/AST/Sequence.my.rb +22 -10
  42. data/lib/myco/code_tools/AST/SplatValue.my.rb +28 -16
  43. data/lib/myco/code_tools/AST/StringCompose.my.rb +23 -11
  44. data/lib/myco/code_tools/AST/StringLiteral.my.rb +19 -7
  45. data/lib/myco/code_tools/AST/SymbolCompose.my.rb +27 -15
  46. data/lib/myco/code_tools/AST/SymbolLiteral.my.rb +18 -6
  47. data/lib/myco/code_tools/AST/ToRuby.my.rb +581 -341
  48. data/lib/myco/code_tools/AST/misc.my.rb +87 -35
  49. data/lib/myco/code_tools/Parser.my.rb +39 -12
  50. data/lib/myco/code_tools/parser/MycoBuilder.my.rb +106 -90
  51. data/lib/myco/code_tools/parser/MycoCharacterClasses.my.rb +98 -50
  52. data/lib/myco/code_tools/parser/MycoGrammar.my +1 -6
  53. data/lib/myco/code_tools/parser/MycoGrammar.my.rb +2124 -1710
  54. data/lib/myco/code_tools/parser/MycoTokens.my +0 -5
  55. data/lib/myco/code_tools/parser/MycoTokens.my.rb +387 -156
  56. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces.my.rb +55 -11
  57. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/BytecodeHelpers.my.rb +321 -205
  58. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Capture.my.rb +223 -127
  59. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Common.my.rb +188 -72
  60. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Common/Parser.my +48 -0
  61. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Common/Parser.my.rb +365 -189
  62. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Composite.my.rb +313 -233
  63. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Grammar.my.rb +99 -55
  64. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Processor.my.rb +493 -325
  65. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Stream.my.rb +138 -114
  66. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Stream/Parser.my.rb +56 -44
  67. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/String.my.rb +173 -93
  68. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/String/Parser.my.rb +90 -70
  69. data/lib/myco/command.my.rb +85 -25
  70. data/lib/myco/command/inoculate.my.rb +219 -127
  71. data/lib/myco/core.my.rb +20 -4
  72. data/lib/myco/core/BasicDecorators.my.rb +211 -119
  73. data/lib/myco/core/BasicObject.my.rb +108 -44
  74. data/lib/myco/core/Category.my.rb +37 -13
  75. data/lib/myco/core/Decorator.my.rb +35 -27
  76. data/lib/myco/core/FileToplevel.my.rb +55 -27
  77. data/lib/myco/core/Loop.my.rb +16 -8
  78. data/lib/myco/core/Object.my.rb +34 -14
  79. data/lib/myco/core/Ruby.my.rb +13 -5
  80. data/lib/myco/core/Switch.my.rb +79 -47
  81. data/lib/myco/tools/BasicCommand.my.rb +79 -47
  82. data/lib/myco/tools/mycompile.my.rb +153 -69
  83. data/lib/myco/version.rb +1 -1
  84. metadata +34 -52
  85. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Parser.my +0 -144
  86. data/lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Parser.my.rb +0 -221
  87. data/lib/myco/code_tools/parser/pegleromyces/spec/BasicSpec.my +0 -35
  88. data/lib/myco/code_tools/parser/pegleromyces/spec/BasicSpec.my.rb +0 -35
  89. data/lib/myco/code_tools/parser/pegleromyces/spec/Grammar.test.my +0 -10
  90. data/lib/myco/code_tools/parser/pegleromyces/spec/Grammar.test.my.rb +0 -9
  91. data/lib/myco/code_tools/parser/pegleromyces/spec/Patterns.test.my +0 -162
  92. data/lib/myco/code_tools/parser/pegleromyces/spec/Patterns.test.my.rb +0 -353
  93. data/lib/myco/code_tools/parser/pegleromyces/spec/Processor.test.my +0 -10
  94. data/lib/myco/code_tools/parser/pegleromyces/spec/Processor.test.my.rb +0 -9
  95. data/lib/myco/code_tools/parser/pegleromyces/spec/Stream/Parser.test.my +0 -49
  96. data/lib/myco/code_tools/parser/pegleromyces/spec/Stream/Parser.test.my.rb +0 -119
  97. data/lib/myco/code_tools/parser/pegleromyces/spec/Stream/Patterns.test.my +0 -131
  98. data/lib/myco/code_tools/parser/pegleromyces/spec/Stream/Patterns.test.my.rb +0 -595
  99. data/lib/myco/code_tools/parser/pegleromyces/spec/String/Parser.test.my +0 -120
  100. data/lib/myco/code_tools/parser/pegleromyces/spec/String/Parser.test.my.rb +0 -350
  101. data/lib/myco/code_tools/parser/pegleromyces/spec/run.my +0 -14
  102. data/lib/myco/code_tools/parser/pegleromyces/spec/run.my.rb +0 -12
@@ -2,57 +2,89 @@
2
2
  ::Myco::Component.new([::Myco::FileToplevel], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
3
3
  .tap { |__c__| __c__.__last__ = __c__.component_eval {(::Myco.cscope.for_method_definition::BasicCommand = ::Myco::Component.new([::Myco.find_constant(:Object)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
4
4
  .tap { |__c__| __c__.__last__ = __c__.component_eval {(
5
- declare_meme(:banner, [], nil, ::Myco.cscope.dup) { |*| ("")}
6
- declare_meme(:width, [], nil, ::Myco.cscope.dup) { |*| (30)}
7
- declare_meme(:options_config, [], nil, ::Myco.cscope.dup) { |*| (nil)}
8
- declare_meme(:options_parse, [], nil, ::Myco.cscope.dup) { |*argv| (
9
- command = ::Myco.branch_op(:"&&", argv.first) {self.commands.memes.__send__(
10
- :[],
11
- argv.first.to_sym
5
+ declare_meme(
6
+ :banner,
7
+ [],
8
+ ::Object::Proc.new { |*| ("")}
9
+ )
10
+ declare_meme(
11
+ :width,
12
+ [],
13
+ ::Object::Proc.new { |*| (30)}
14
+ )
15
+ declare_meme(
16
+ :options_config,
17
+ [],
18
+ ::Object::Proc.new { |*| (nil)}
19
+ )
20
+ declare_meme(
21
+ :options_parse,
22
+ [],
23
+ ::Object::Proc.new { |*argv| (
24
+ command = ::Myco.branch_op(:"&&", argv.first) {self.commands.memes.__send__(
25
+ :[],
26
+ argv.first.to_sym
27
+ )}
28
+ ::Myco.branch_op(:"??", ::Myco.branch_op(:"&?", command) {(
29
+ command.result.run(*argv.slice(::Myco.find_constant(:Range).new(
30
+ 1,
31
+ -1
32
+ )))
33
+ nil
34
+ )}) {self.options_parser.parse(argv)}
12
35
  )}
13
- ::Myco.branch_op(:"??", ::Myco.branch_op(:"&?", command) {(
14
- command.result.run(*argv.slice(::Myco.find_constant(:Range).new(
15
- 1,
16
- -1
17
- )))
18
- nil
19
- )}) {self.options_parser.parse(argv)}
20
- )}
21
- declare_meme(:options_parser, [], nil, ::Myco.cscope.dup) { |*| (
22
- parser = ::Myco.find_constant(:Rubinius)::Options.new(
23
- self.banner,
24
- self.width,
25
- self.options_config
26
- )
27
- self.options.memes.each { |name, meme| (meme.result.register_in_parser(
28
- parser,
29
- name
30
- ))}
31
- parser.help
32
- parser
33
- )}
34
- declare_meme(:show_help, [], nil, ::Myco.cscope.dup) { |*| (self.puts(self.options_parser.to_s))}
35
- ::Myco.cscope.for_method_definition::Option = ::Myco::Component.new([::Myco.find_constant(:Object)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
36
- .tap { |__c__| __c__.__last__ = __c__.component_eval {(
37
- declare_meme(:parser, [[:var, []]], nil, ::Myco.cscope.dup) { |*| nil}
38
- declare_meme(:register_in_parser, [], nil, ::Myco.cscope.dup) { |parser, name| (
39
- self.__send__(
40
- :parser=,
41
- parser
36
+ )
37
+ declare_meme(
38
+ :options_parser,
39
+ [],
40
+ ::Object::Proc.new { |*| (
41
+ parser = ::Myco.find_constant(:Rubinius)::Options.new(
42
+ self.banner,
43
+ self.width,
44
+ self.options_config
42
45
  )
43
- args = [
44
- name,
45
- ::Myco.branch_op(:"??", (Rubinius::Type.object_respond_to?(self, :argument).false? ? ::Myco::Void : self.argument)) {nil},
46
- self.long_form,
47
- self.description
48
- ]
49
- args = args.compact
50
- args = args.map { |arg| (arg.to_s)}
51
- parser.on(*args) { |arg| (self.__send__(
52
- :do,
53
- arg
46
+ self.options.memes.each { |name, meme| (meme.result.register_in_parser(
47
+ parser,
48
+ name
54
49
  ))}
50
+ parser.help
51
+ parser
55
52
  )}
53
+ )
54
+ declare_meme(
55
+ :show_help,
56
+ [],
57
+ ::Object::Proc.new { |*| (self.puts(self.options_parser.to_s))}
58
+ )
59
+ ::Myco.cscope.for_method_definition::Option = ::Myco::Component.new([::Myco.find_constant(:Object)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
60
+ .tap { |__c__| __c__.__last__ = __c__.component_eval {(
61
+ declare_meme(
62
+ :parser,
63
+ [:var],
64
+ ::Object::Proc.new { |*| nil}
65
+ )
66
+ declare_meme(
67
+ :register_in_parser,
68
+ [],
69
+ ::Object::Proc.new { |parser, name| (
70
+ self.__send__(
71
+ :parser=,
72
+ parser
73
+ )
74
+ args = [
75
+ name,
76
+ ::Myco.branch_op(:"??", (Rubinius::Type.object_respond_to?(self, :argument).false? ? ::Myco::Void : self.argument)) {nil},
77
+ self.long_form,
78
+ self.description
79
+ ]
80
+ args = args.compact
81
+ args = args.map { |arg| (arg.to_s)}
82
+ parser.on(*args) { |arg| (self.__send__(
83
+ :do,
84
+ arg
85
+ ))}
86
+ )}
87
+ )
56
88
  )}}
57
89
  .tap { |__c__| __c__.__name__ = :Option }
58
90
  __category__(:options).component_eval {nil}
@@ -1,77 +1,161 @@
1
1
 
2
2
  ::Myco::Component.new([::Myco::FileToplevel], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
3
3
  .tap { |__c__| __c__.__last__ = __c__.component_eval {(
4
- declare_meme(:"OptionParser.my", [[:import, []]], nil, ::Myco.cscope.dup) { |*| nil}
4
+ declare_meme(
5
+ :"OptionParser.my",
6
+ [:import],
7
+ ::Object::Proc.new { |*| nil}
8
+ )
5
9
  ::Myco::Component.new([::Myco.find_constant(:Object)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
6
10
  .tap { |__c__| __c__.__last__ = __c__.component_eval {(
7
- declare_meme(:options, [[:var, []]], nil, ::Myco.cscope.dup) { |*| (::Myco::Component.new([::Myco.find_constant(:OptionParser)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
8
- .tap { |__c__| __c__.__last__ = __c__.component_eval {(
9
- declare_meme(:results, [[:var, []]], nil, ::Myco.cscope.dup) { |*| (nil)}
10
- __category__(:options).component_eval {(
11
- declare_meme(:"-A", [], nil, ::Myco.cscope.dup) { |*| (::Myco::Component.new([::Myco.find_constant(:Option)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
12
- .tap { |__c__| __c__.__last__ = __c__.component_eval {(
13
- declare_meme(:description, [], nil, ::Myco.cscope.dup) { |*| ("Print an ascii graph of the AST")}
14
- declare_meme(:long_form, [], nil, ::Myco.cscope.dup) { |*| ("--print-ast")}
15
- declare_meme(:do, [], nil, ::Myco.cscope.dup) { |*| (self.__send__(
16
- :results=,
17
- ::Myco.find_constant(:Myco)::ToolSet::Compiler::ASTPrinter,
18
- :print_ast
19
- ))}
20
- )}}.instance)}
21
- declare_meme(:"-S", [], nil, ::Myco.cscope.dup) { |*| (::Myco::Component.new([::Myco.find_constant(:Option)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
22
- .tap { |__c__| __c__.__last__ = __c__.component_eval {(
23
- declare_meme(:description, [], nil, ::Myco.cscope.dup) { |*| ("Print the AST as an S-expression")}
24
- declare_meme(:long_form, [], nil, ::Myco.cscope.dup) { |*| ("--print-sexp")}
25
- declare_meme(:do, [], nil, ::Myco.cscope.dup) { |*| (self.__send__(
26
- :results=,
27
- ::Myco.find_constant(:Myco)::ToolSet::Compiler::SexpPrinter,
28
- :print_ast
29
- ))}
30
- )}}.instance)}
31
- declare_meme(:"-B", [], nil, ::Myco.cscope.dup) { |*| (::Myco::Component.new([::Myco.find_constant(:Option)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
32
- .tap { |__c__| __c__.__last__ = __c__.component_eval {(
33
- declare_meme(:description, [], nil, ::Myco.cscope.dup) { |*| ("Print bytecode for compiled methods")}
34
- declare_meme(:long_form, [], nil, ::Myco.cscope.dup) { |*| ("--print-bytecode")}
35
- declare_meme(:do, [], nil, ::Myco.cscope.dup) { |*| (self.__send__(
36
- :results=,
37
- true,
38
- :print_bytecode
39
- ))}
40
- )}}.instance)}
41
- declare_meme(:"-e", [], nil, ::Myco.cscope.dup) { |*| (::Myco::Component.new([::Myco.find_constant(:Option)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
42
- .tap { |__c__| __c__.__last__ = __c__.component_eval {(
43
- declare_meme(:argument, [], nil, ::Myco.cscope.dup) { |*| ("STRING")}
44
- declare_meme(:description, [], nil, ::Myco.cscope.dup) { |*| ("Compile STRING")}
45
- declare_meme(:long_form, [], nil, ::Myco.cscope.dup) { |*| ("--evaluate")}
46
- declare_meme(:do, [], nil, ::Myco.cscope.dup) { |arg| (self.__send__(
47
- :results=,
48
- arg,
49
- :string
50
- ))}
51
- )}}.instance)}
11
+ declare_meme(
12
+ :options,
13
+ [:var],
14
+ ::Object::Proc.new { |*| (::Myco::Component.new([::Myco.find_constant(:OptionParser)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
15
+ .tap { |__c__| __c__.__last__ = __c__.component_eval {(
16
+ declare_meme(
17
+ :results,
18
+ [:var],
19
+ ::Object::Proc.new { |*| (nil)}
20
+ )
21
+ __category__(:options).component_eval {(
22
+ declare_meme(
23
+ :"-A",
24
+ [],
25
+ ::Object::Proc.new { |*| (::Myco::Component.new([::Myco.find_constant(:Option)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
26
+ .tap { |__c__| __c__.__last__ = __c__.component_eval {(
27
+ declare_meme(
28
+ :description,
29
+ [],
30
+ ::Object::Proc.new { |*| ("Print an ascii graph of the AST")}
31
+ )
32
+ declare_meme(
33
+ :long_form,
34
+ [],
35
+ ::Object::Proc.new { |*| ("--print-ast")}
36
+ )
37
+ declare_meme(
38
+ :do,
39
+ [],
40
+ ::Object::Proc.new { |*| (self.__send__(
41
+ :results=,
42
+ ::Myco.find_constant(:Myco)::ToolSet::Compiler::ASTPrinter,
43
+ :print_ast
44
+ ))}
45
+ )
46
+ )}}.instance)}
47
+ )
48
+ declare_meme(
49
+ :"-S",
50
+ [],
51
+ ::Object::Proc.new { |*| (::Myco::Component.new([::Myco.find_constant(:Option)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
52
+ .tap { |__c__| __c__.__last__ = __c__.component_eval {(
53
+ declare_meme(
54
+ :description,
55
+ [],
56
+ ::Object::Proc.new { |*| ("Print the AST as an S-expression")}
57
+ )
58
+ declare_meme(
59
+ :long_form,
60
+ [],
61
+ ::Object::Proc.new { |*| ("--print-sexp")}
62
+ )
63
+ declare_meme(
64
+ :do,
65
+ [],
66
+ ::Object::Proc.new { |*| (self.__send__(
67
+ :results=,
68
+ ::Myco.find_constant(:Myco)::ToolSet::Compiler::SexpPrinter,
69
+ :print_ast
70
+ ))}
71
+ )
72
+ )}}.instance)}
73
+ )
74
+ declare_meme(
75
+ :"-B",
76
+ [],
77
+ ::Object::Proc.new { |*| (::Myco::Component.new([::Myco.find_constant(:Option)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
78
+ .tap { |__c__| __c__.__last__ = __c__.component_eval {(
79
+ declare_meme(
80
+ :description,
81
+ [],
82
+ ::Object::Proc.new { |*| ("Print bytecode for compiled methods")}
83
+ )
84
+ declare_meme(
85
+ :long_form,
86
+ [],
87
+ ::Object::Proc.new { |*| ("--print-bytecode")}
88
+ )
89
+ declare_meme(
90
+ :do,
91
+ [],
92
+ ::Object::Proc.new { |*| (self.__send__(
93
+ :results=,
94
+ true,
95
+ :print_bytecode
96
+ ))}
97
+ )
98
+ )}}.instance)}
99
+ )
100
+ declare_meme(
101
+ :"-e",
102
+ [],
103
+ ::Object::Proc.new { |*| (::Myco::Component.new([::Myco.find_constant(:Option)], ::Myco.cscope.for_method_definition, __FILE__, __LINE__)
104
+ .tap { |__c__| __c__.__last__ = __c__.component_eval {(
105
+ declare_meme(
106
+ :argument,
107
+ [],
108
+ ::Object::Proc.new { |*| ("STRING")}
109
+ )
110
+ declare_meme(
111
+ :description,
112
+ [],
113
+ ::Object::Proc.new { |*| ("Compile STRING")}
114
+ )
115
+ declare_meme(
116
+ :long_form,
117
+ [],
118
+ ::Object::Proc.new { |*| ("--evaluate")}
119
+ )
120
+ declare_meme(
121
+ :do,
122
+ [],
123
+ ::Object::Proc.new { |arg| (self.__send__(
124
+ :results=,
125
+ arg,
126
+ :string
127
+ ))}
128
+ )
129
+ )}}.instance)}
130
+ )
131
+ )}
132
+ )}}.instance)}
133
+ )
134
+ declare_meme(
135
+ :run,
136
+ [],
137
+ ::Object::Proc.new { |*argv| (
138
+ self.options.parse(argv)
139
+ print_ast = ::Myco.branch_op(:"||", self.options.results(:print_ast)) {false}
140
+ string = ::Myco.branch_op(:"||", self.options.results(:string)) {""}
141
+ compiler = ::Myco::ToolSet::Compiler
142
+ compiler = compiler.new(
143
+ :string,
144
+ :compiled_code
145
+ )
146
+ parser = compiler.parser
147
+ parser.root(::Myco::ToolSet::AST::Script)
148
+ parser.input(
149
+ string,
150
+ "(mycompile)",
151
+ 1
152
+ )
153
+ self.__send__(
154
+ :if,
155
+ print_ast
156
+ ) { |*| (compiler.parser.print(print_ast))}
157
+ compiler.run
52
158
  )}
53
- )}}.instance)}
54
- declare_meme(:run, [], nil, ::Myco.cscope.dup) { |*argv| (
55
- self.options.parse(argv)
56
- print_ast = ::Myco.branch_op(:"||", self.options.results(:print_ast)) {false}
57
- string = ::Myco.branch_op(:"||", self.options.results(:string)) {""}
58
- compiler = ::Myco::ToolSet::Compiler
59
- compiler = compiler.new(
60
- :string,
61
- :compiled_code
62
- )
63
- parser = compiler.parser
64
- parser.root(::Myco::ToolSet::AST::Script)
65
- parser.input(
66
- string,
67
- "(mycompile)",
68
- 1
69
- )
70
- self.__send__(
71
- :if,
72
- print_ast
73
- ) { || (compiler.parser.print(print_ast))}
74
- compiler.run
75
- )}
159
+ )
76
160
  )}}.instance
77
161
  )}}.instance
@@ -1,6 +1,6 @@
1
1
 
2
2
  module Myco
3
- MYCO_VERSION = '0.1.9'
3
+ MYCO_VERSION = '0.1.10'
4
4
 
5
5
  MYCO_REQUIRED_GEMS = [
6
6
  ['rubinius-toolset', '~> 2.3'],
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: myco
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.9
4
+ version: 0.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joe McIlvain
@@ -11,117 +11,117 @@ cert_chain: []
11
11
  date: 2015-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- type: :runtime
15
14
  name: rubinius-toolset
16
- prerelease: false
17
- requirement: !ruby/object:Gem::Requirement
15
+ type: :runtime
16
+ version_requirements: !ruby/object:Gem::Requirement
18
17
  requirements:
19
18
  - - "~>"
20
19
  - !ruby/object:Gem::Version
21
20
  version: '2.3'
22
- version_requirements: !ruby/object:Gem::Requirement
21
+ requirement: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
25
  version: '2.3'
26
+ prerelease: false
27
27
  - !ruby/object:Gem::Dependency
28
- type: :runtime
29
28
  name: rubinius-compiler
30
- prerelease: false
31
- requirement: !ruby/object:Gem::Requirement
29
+ type: :runtime
30
+ version_requirements: !ruby/object:Gem::Requirement
32
31
  requirements:
33
32
  - - "~>"
34
33
  - !ruby/object:Gem::Version
35
34
  version: '2.2'
36
- version_requirements: !ruby/object:Gem::Requirement
35
+ requirement: !ruby/object:Gem::Requirement
37
36
  requirements:
38
37
  - - "~>"
39
38
  - !ruby/object:Gem::Version
40
39
  version: '2.2'
40
+ prerelease: false
41
41
  - !ruby/object:Gem::Dependency
42
- type: :development
43
42
  name: bundler
44
- prerelease: false
45
- requirement: !ruby/object:Gem::Requirement
43
+ type: :development
44
+ version_requirements: !ruby/object:Gem::Requirement
46
45
  requirements:
47
46
  - - "~>"
48
47
  - !ruby/object:Gem::Version
49
48
  version: '1.6'
50
- version_requirements: !ruby/object:Gem::Requirement
49
+ requirement: !ruby/object:Gem::Requirement
51
50
  requirements:
52
51
  - - "~>"
53
52
  - !ruby/object:Gem::Version
54
53
  version: '1.6'
54
+ prerelease: false
55
55
  - !ruby/object:Gem::Dependency
56
- type: :development
57
56
  name: rake
58
- prerelease: false
59
- requirement: !ruby/object:Gem::Requirement
57
+ type: :development
58
+ version_requirements: !ruby/object:Gem::Requirement
60
59
  requirements:
61
60
  - - "~>"
62
61
  - !ruby/object:Gem::Version
63
62
  version: '10.3'
64
- version_requirements: !ruby/object:Gem::Requirement
63
+ requirement: !ruby/object:Gem::Requirement
65
64
  requirements:
66
65
  - - "~>"
67
66
  - !ruby/object:Gem::Version
68
67
  version: '10.3'
68
+ prerelease: false
69
69
  - !ruby/object:Gem::Dependency
70
- type: :development
71
70
  name: pry
72
- prerelease: false
73
- requirement: !ruby/object:Gem::Requirement
71
+ type: :development
72
+ version_requirements: !ruby/object:Gem::Requirement
74
73
  requirements:
75
74
  - - "~>"
76
75
  - !ruby/object:Gem::Version
77
76
  version: '0.9'
78
- version_requirements: !ruby/object:Gem::Requirement
77
+ requirement: !ruby/object:Gem::Requirement
79
78
  requirements:
80
79
  - - "~>"
81
80
  - !ruby/object:Gem::Version
82
81
  version: '0.9'
82
+ prerelease: false
83
83
  - !ruby/object:Gem::Dependency
84
- type: :development
85
84
  name: pry-rescue
86
- prerelease: false
87
- requirement: !ruby/object:Gem::Requirement
85
+ type: :development
86
+ version_requirements: !ruby/object:Gem::Requirement
88
87
  requirements:
89
88
  - - "~>"
90
89
  - !ruby/object:Gem::Version
91
90
  version: '1.4'
92
- version_requirements: !ruby/object:Gem::Requirement
91
+ requirement: !ruby/object:Gem::Requirement
93
92
  requirements:
94
93
  - - "~>"
95
94
  - !ruby/object:Gem::Version
96
95
  version: '1.4'
96
+ prerelease: false
97
97
  - !ruby/object:Gem::Dependency
98
- type: :development
99
98
  name: rspec
100
- prerelease: false
101
- requirement: !ruby/object:Gem::Requirement
99
+ type: :development
100
+ version_requirements: !ruby/object:Gem::Requirement
102
101
  requirements:
103
102
  - - "~>"
104
103
  - !ruby/object:Gem::Version
105
104
  version: '3.0'
106
- version_requirements: !ruby/object:Gem::Requirement
105
+ requirement: !ruby/object:Gem::Requirement
107
106
  requirements:
108
107
  - - "~>"
109
108
  - !ruby/object:Gem::Version
110
109
  version: '3.0'
110
+ prerelease: false
111
111
  - !ruby/object:Gem::Dependency
112
- type: :development
113
112
  name: fivemat
114
- prerelease: false
115
- requirement: !ruby/object:Gem::Requirement
113
+ type: :development
114
+ version_requirements: !ruby/object:Gem::Requirement
116
115
  requirements:
117
116
  - - "~>"
118
117
  - !ruby/object:Gem::Version
119
118
  version: '1.3'
120
- version_requirements: !ruby/object:Gem::Requirement
119
+ requirement: !ruby/object:Gem::Requirement
121
120
  requirements:
122
121
  - - "~>"
123
122
  - !ruby/object:Gem::Version
124
123
  version: '1.3'
124
+ prerelease: false
125
125
  description: An experimental language on the Rubinius VM
126
126
  email: joe.eli.mac@gmail.com
127
127
  executables:
@@ -259,8 +259,6 @@ files:
259
259
  - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Composite.my.rb
260
260
  - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Grammar.my
261
261
  - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Grammar.my.rb
262
- - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Parser.my
263
- - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Parser.my.rb
264
262
  - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Processor.my
265
263
  - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Processor.my.rb
266
264
  - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/Stream.my
@@ -271,22 +269,6 @@ files:
271
269
  - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/String.my.rb
272
270
  - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/String/Parser.my
273
271
  - lib/myco/code_tools/parser/pegleromyces/lib/pegleromyces/String/Parser.my.rb
274
- - lib/myco/code_tools/parser/pegleromyces/spec/BasicSpec.my
275
- - lib/myco/code_tools/parser/pegleromyces/spec/BasicSpec.my.rb
276
- - lib/myco/code_tools/parser/pegleromyces/spec/Grammar.test.my
277
- - lib/myco/code_tools/parser/pegleromyces/spec/Grammar.test.my.rb
278
- - lib/myco/code_tools/parser/pegleromyces/spec/Patterns.test.my
279
- - lib/myco/code_tools/parser/pegleromyces/spec/Patterns.test.my.rb
280
- - lib/myco/code_tools/parser/pegleromyces/spec/Processor.test.my
281
- - lib/myco/code_tools/parser/pegleromyces/spec/Processor.test.my.rb
282
- - lib/myco/code_tools/parser/pegleromyces/spec/Stream/Parser.test.my
283
- - lib/myco/code_tools/parser/pegleromyces/spec/Stream/Parser.test.my.rb
284
- - lib/myco/code_tools/parser/pegleromyces/spec/Stream/Patterns.test.my
285
- - lib/myco/code_tools/parser/pegleromyces/spec/Stream/Patterns.test.my.rb
286
- - lib/myco/code_tools/parser/pegleromyces/spec/String/Parser.test.my
287
- - lib/myco/code_tools/parser/pegleromyces/spec/String/Parser.test.my.rb
288
- - lib/myco/code_tools/parser/pegleromyces/spec/run.my
289
- - lib/myco/code_tools/parser/pegleromyces/spec/run.my.rb
290
272
  - lib/myco/command.my
291
273
  - lib/myco/command.my.rb
292
274
  - lib/myco/command/inoculate.my
@@ -342,7 +324,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
342
324
  version: '0'
343
325
  requirements: []
344
326
  rubyforge_project:
345
- rubygems_version: 2.4.8
327
+ rubygems_version: 2.5.1
346
328
  signing_key:
347
329
  specification_version: 4
348
330
  summary: An experimental language on the Rubinius VM