myco 0.1.0.dev → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -7
- data/LICENSE +1 -1
- data/README.md +79 -0
- data/lib/myco/backtrace.rb +1 -1
- data/lib/myco/bootstrap/component.rb +78 -39
- data/lib/myco/bootstrap/find_constant.rb +12 -1
- data/lib/myco/bootstrap/instance.rb +5 -12
- data/lib/myco/bootstrap/meme.rb +176 -28
- data/lib/myco/bootstrap.my +8 -7
- data/lib/myco/code_loader.rb +332 -0
- data/lib/myco/command/inoculate.my +83 -0
- data/lib/myco/command.my +26 -26
- data/lib/myco/core/BasicDecorators.my +62 -0
- data/lib/myco/core/BasicObject.my +12 -34
- data/lib/myco/core/Decorator.my +1 -0
- data/lib/myco/core/FileToplevel.my +0 -3
- data/lib/myco/core/Myco.my +4 -0
- data/lib/myco/core/Object.my +6 -4
- data/lib/myco/eval.rb +17 -18
- data/lib/myco/misc.rb +16 -0
- data/lib/myco/parser/ast/argument_assembly.rb +76 -0
- data/lib/myco/parser/ast/array_assembly.rb +57 -0
- data/lib/myco/parser/ast/branch_operator.rb +73 -0
- data/lib/myco/parser/ast/constant_access.rb +4 -18
- data/lib/myco/parser/ast/constant_define.rb +3 -3
- data/lib/myco/parser/ast/constant_reopen.rb +12 -13
- data/lib/myco/parser/ast/declare_category.rb +8 -6
- data/lib/myco/parser/ast/declare_decorator.rb +4 -4
- data/lib/myco/parser/ast/declare_file.rb +4 -4
- data/lib/myco/parser/ast/declare_meme.rb +53 -11
- data/lib/myco/parser/ast/declare_object.rb +9 -7
- data/lib/myco/parser/ast/declare_string.rb +5 -5
- data/lib/myco/parser/ast/invoke.rb +18 -36
- data/lib/myco/parser/ast/invoke_method.rb +28 -0
- data/lib/myco/parser/ast/local_variable_access_ambiguous.rb +9 -13
- data/lib/myco/parser/ast/misc.rb +128 -33
- data/lib/myco/parser/ast/myco_module_scope.rb +26 -0
- data/lib/myco/parser/ast/quest.rb +3 -3
- data/lib/myco/parser/ast/to_ruby/array_assembly.rb +15 -0
- data/lib/myco/parser/ast/to_ruby/block.rb +14 -0
- data/lib/myco/parser/ast/to_ruby/block_pass.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/branch_operator.rb +9 -0
- data/lib/myco/parser/ast/to_ruby/constant_access.rb +10 -0
- data/lib/myco/parser/ast/to_ruby/constant_assignment.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/constant_define.rb +9 -0
- data/lib/myco/parser/ast/to_ruby/constant_reopen.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/declare_category.rb +7 -0
- data/lib/myco/parser/ast/to_ruby/declare_decorator.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/declare_file.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/declare_meme.rb +16 -0
- data/lib/myco/parser/ast/to_ruby/declare_object.rb +8 -0
- data/lib/myco/parser/ast/to_ruby/declare_string.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/dynamic_string.rb +14 -0
- data/lib/myco/parser/ast/to_ruby/dynamic_symbol.rb +7 -0
- data/lib/myco/parser/ast/to_ruby/eval_expression.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/false_literal.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/hash_literal.rb +16 -0
- data/lib/myco/parser/ast/to_ruby/invoke.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/invoke_method.rb +35 -0
- data/lib/myco/parser/ast/to_ruby/iter.rb +10 -0
- data/lib/myco/parser/ast/to_ruby/local_variable_access_ambiguous.rb +16 -0
- data/lib/myco/parser/ast/to_ruby/local_variable_assignment.rb +8 -0
- data/lib/myco/parser/ast/to_ruby/myco_module_scope.rb +8 -0
- data/lib/myco/parser/ast/to_ruby/null_literal.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/parameters.rb +60 -0
- data/lib/myco/parser/ast/to_ruby/quest.rb +13 -0
- data/lib/myco/parser/ast/to_ruby/return.rb +7 -0
- data/lib/myco/parser/ast/to_ruby/scoped_constant.rb +11 -0
- data/lib/myco/parser/ast/to_ruby/self.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/splat_value.rb +33 -0
- data/lib/myco/parser/ast/to_ruby/string_literal.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/symbol_literal.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/toplevel_constant.rb +11 -0
- data/lib/myco/parser/ast/to_ruby/true_literal.rb +6 -0
- data/lib/myco/parser/ast/to_ruby/void_literal.rb +6 -0
- data/lib/myco/parser/ast/to_ruby.rb +138 -0
- data/lib/myco/parser/ast.rb +6 -0
- data/lib/myco/parser/peg_parser.rb +361 -181
- data/lib/myco/parser.rb +27 -11
- data/lib/myco/tools/BasicCommand.my +42 -0
- data/lib/myco/tools/Generator.my +18 -0
- data/lib/myco/toolset.rb +0 -3
- data/lib/myco/version.rb +1 -4
- data/lib/myco.rb +2 -0
- metadata +230 -160
- data/lib/myco/parser/builder.output +0 -3995
- data/lib/myco/parser/builder.racc +0 -585
- data/lib/myco/parser/builder.rb +0 -1592
- data/lib/myco/parser/lexer.rb +0 -2306
- data/lib/myco/parser/lexer.rl +0 -393
- data/lib/myco/parser/lexer_char_classes.rl +0 -56
- data/lib/myco/parser/lexer_common.rb +0 -95
- data/lib/myco/parser/lexer_skeleton.rl +0 -154
- data/lib/myco/parser/peg_parser.kpeg +0 -759
- data/lib/myco/tools/OptionParser.my +0 -38
data/lib/myco/parser.rb
CHANGED
|
@@ -21,20 +21,36 @@ require_relative 'parser/ast'
|
|
|
21
21
|
require_relative 'parser/peg_parser'
|
|
22
22
|
|
|
23
23
|
module CodeTools
|
|
24
|
+
|
|
25
|
+
class AST::Builder
|
|
26
|
+
include CodeTools::AST::BuilderMethods
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
class PegParserWrapper
|
|
30
|
+
def parse string
|
|
31
|
+
@parser = Myco::ToolSet::PegParser.new string
|
|
32
|
+
@parser.builder = Myco::ToolSet::AST::Builder.new
|
|
33
|
+
@parsed_okay = !!@parser.parse
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def result
|
|
37
|
+
{ root: @parser.root_node } if @parsed_okay
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def raise_error
|
|
41
|
+
@parser.show_error(io=StringIO.new)
|
|
42
|
+
raise SyntaxError, io.string
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
24
46
|
class Parser
|
|
25
|
-
|
|
47
|
+
Implementation = PegParserWrapper
|
|
26
48
|
|
|
27
49
|
def parse_string string
|
|
28
|
-
@
|
|
29
|
-
@
|
|
30
|
-
|
|
31
|
-
if @peg_parser.parse
|
|
32
|
-
return @peg_parser.root_node
|
|
33
|
-
else
|
|
34
|
-
@peg_parser.show_error(io=StringIO.new)
|
|
35
|
-
raise SyntaxError, io.string
|
|
36
|
-
end
|
|
50
|
+
@parser = Implementation.new
|
|
51
|
+
@parser.parse(string)
|
|
52
|
+
@parser.result ? @parser.result.fetch(:root) : @parser.raise_error
|
|
37
53
|
end
|
|
38
|
-
|
|
39
54
|
end
|
|
55
|
+
|
|
40
56
|
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
|
|
2
|
+
BasicCommand < Object {
|
|
3
|
+
banner: ""
|
|
4
|
+
width: 30
|
|
5
|
+
options_config: null
|
|
6
|
+
|
|
7
|
+
options_parse: |*argv| {
|
|
8
|
+
command = argv.first && self.commands.memes[argv.first.to_sym]
|
|
9
|
+
command
|
|
10
|
+
&? (command.result.run(*argv.slice(::Range.new(1, -1))); null)
|
|
11
|
+
?? options_parser.parse(argv)
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
options_parser: {
|
|
15
|
+
parser = Rubinius::Options.new(banner, width, options_config)
|
|
16
|
+
options.memes.each |name, meme| {
|
|
17
|
+
meme.result.register_in_parser(parser, name)
|
|
18
|
+
}
|
|
19
|
+
parser.help
|
|
20
|
+
parser
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
show_help: puts(options_parser.to_s)
|
|
24
|
+
|
|
25
|
+
Option < Object {
|
|
26
|
+
var parser
|
|
27
|
+
|
|
28
|
+
register_in_parser: |parser, name| {
|
|
29
|
+
self.parser = parser
|
|
30
|
+
|
|
31
|
+
args = [name, (self.?argument ?? null), long_form, description]
|
|
32
|
+
args = args.compact
|
|
33
|
+
args = args.map |arg| { arg.to_s }
|
|
34
|
+
|
|
35
|
+
parser.on(*args) |arg| { do(arg) }
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
# Empty categories to be filled by the user
|
|
40
|
+
[options]
|
|
41
|
+
[commands]
|
|
42
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
|
|
2
|
+
Myco::Generator < Object {
|
|
3
|
+
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
Myco::Generator {
|
|
7
|
+
|
|
8
|
+
task: rand ** rand
|
|
9
|
+
|
|
10
|
+
work: 100000.times { task }
|
|
11
|
+
|
|
12
|
+
on creation: {
|
|
13
|
+
ruby_require('rubinius/profiler')
|
|
14
|
+
prof = Rubinius::Profiler::Instrumenter.new
|
|
15
|
+
prof.profile { work }
|
|
16
|
+
prof.show
|
|
17
|
+
}
|
|
18
|
+
}
|
data/lib/myco/toolset.rb
CHANGED
data/lib/myco/version.rb
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
|
|
2
2
|
module Myco
|
|
3
|
-
MYCO_VERSION = '0.1.0
|
|
3
|
+
MYCO_VERSION = '0.1.0'
|
|
4
4
|
|
|
5
5
|
MYCO_REQUIRED_GEMS = [
|
|
6
|
-
['kpeg', '~> 1.0'],
|
|
7
|
-
['racc', '~> 1.4'],
|
|
8
|
-
['rubinius-bridge', '~> 1.1'],
|
|
9
6
|
['rubinius-toolset', '~> 2.3'],
|
|
10
7
|
['rubinius-melbourne', '~> 2.2'],
|
|
11
8
|
['rubinius-processor', '~> 2.2'],
|
data/lib/myco.rb
CHANGED
|
@@ -4,7 +4,9 @@ Myco.activate_required_gems
|
|
|
4
4
|
|
|
5
5
|
require_relative 'myco/toolset'
|
|
6
6
|
require_relative 'myco/parser'
|
|
7
|
+
require_relative 'myco/code_loader'
|
|
7
8
|
require_relative 'myco/eval'
|
|
9
|
+
require_relative 'myco/misc'
|
|
8
10
|
require_relative 'myco/backtrace'
|
|
9
11
|
require_relative 'myco/bootstrap'
|
|
10
12
|
|
metadata
CHANGED
|
@@ -1,171 +1,206 @@
|
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: myco
|
|
3
|
-
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.0
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.1.0
|
|
5
5
|
platform: ruby
|
|
6
|
-
authors:
|
|
6
|
+
authors:
|
|
7
7
|
- Joe McIlvain
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
name: racc
|
|
26
|
-
prerelease: false
|
|
27
|
-
requirement: &id002 !ruby/object:Gem::Requirement
|
|
28
|
-
requirements:
|
|
29
|
-
- - ~>
|
|
30
|
-
- &id013 !ruby/object:Gem::Version
|
|
31
|
-
version: "1.4"
|
|
11
|
+
date: 2015-02-18 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
|
15
|
+
requirements:
|
|
16
|
+
- - "~>"
|
|
17
|
+
- !ruby/object:Gem::Version
|
|
18
|
+
version: '2.3'
|
|
19
|
+
name: rubinius-toolset
|
|
20
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
21
|
+
requirements:
|
|
22
|
+
- - "~>"
|
|
23
|
+
- !ruby/object:Gem::Version
|
|
24
|
+
version: '2.3'
|
|
32
25
|
type: :runtime
|
|
33
|
-
version_requirements: *id002
|
|
34
|
-
- !ruby/object:Gem::Dependency
|
|
35
|
-
name: rubinius-bridge
|
|
36
26
|
prerelease: false
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
|
+
requirements:
|
|
30
|
+
- - "~>"
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '2.2'
|
|
33
|
+
name: rubinius-melbourne
|
|
34
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
35
|
+
requirements:
|
|
36
|
+
- - "~>"
|
|
37
|
+
- !ruby/object:Gem::Version
|
|
38
|
+
version: '2.2'
|
|
42
39
|
type: :runtime
|
|
43
|
-
version_requirements: *id003
|
|
44
|
-
- !ruby/object:Gem::Dependency
|
|
45
|
-
name: rubinius-toolset
|
|
46
40
|
prerelease: false
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
requirement: !ruby/object:Gem::Requirement
|
|
43
|
+
requirements:
|
|
44
|
+
- - "~>"
|
|
45
|
+
- !ruby/object:Gem::Version
|
|
46
|
+
version: '2.2'
|
|
47
|
+
name: rubinius-processor
|
|
48
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
49
|
+
requirements:
|
|
50
|
+
- - "~>"
|
|
51
|
+
- !ruby/object:Gem::Version
|
|
52
|
+
version: '2.2'
|
|
52
53
|
type: :runtime
|
|
53
|
-
version_requirements: *id004
|
|
54
|
-
- !ruby/object:Gem::Dependency
|
|
55
|
-
name: rubinius-melbourne
|
|
56
54
|
prerelease: false
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
requirement: !ruby/object:Gem::Requirement
|
|
57
|
+
requirements:
|
|
58
|
+
- - "~>"
|
|
59
|
+
- !ruby/object:Gem::Version
|
|
60
|
+
version: '2.2'
|
|
61
|
+
name: rubinius-compiler
|
|
62
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
63
|
+
requirements:
|
|
64
|
+
- - "~>"
|
|
65
|
+
- !ruby/object:Gem::Version
|
|
66
|
+
version: '2.2'
|
|
62
67
|
type: :runtime
|
|
63
|
-
version_requirements: *id005
|
|
64
|
-
- !ruby/object:Gem::Dependency
|
|
65
|
-
name: rubinius-processor
|
|
66
68
|
prerelease: false
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
requirement: !ruby/object:Gem::Requirement
|
|
71
|
+
requirements:
|
|
72
|
+
- - "~>"
|
|
73
|
+
- !ruby/object:Gem::Version
|
|
74
|
+
version: '2.2'
|
|
75
|
+
name: rubinius-ast
|
|
76
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
77
|
+
requirements:
|
|
78
|
+
- - "~>"
|
|
79
|
+
- !ruby/object:Gem::Version
|
|
80
|
+
version: '2.2'
|
|
71
81
|
type: :runtime
|
|
72
|
-
version_requirements: *id007
|
|
73
|
-
- !ruby/object:Gem::Dependency
|
|
74
|
-
name: rubinius-compiler
|
|
75
82
|
prerelease: false
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
83
|
+
- !ruby/object:Gem::Dependency
|
|
84
|
+
requirement: !ruby/object:Gem::Requirement
|
|
85
|
+
requirements:
|
|
86
|
+
- - "~>"
|
|
87
|
+
- !ruby/object:Gem::Version
|
|
88
|
+
version: '1.0'
|
|
89
|
+
name: kpeg
|
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
91
|
+
requirements:
|
|
92
|
+
- - "~>"
|
|
93
|
+
- !ruby/object:Gem::Version
|
|
94
|
+
version: '1.0'
|
|
95
|
+
type: :development
|
|
84
96
|
prerelease: false
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
- !ruby/object:Gem::Dependency
|
|
97
|
+
- !ruby/object:Gem::Dependency
|
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
|
99
|
+
requirements:
|
|
100
|
+
- - "~>"
|
|
101
|
+
- !ruby/object:Gem::Version
|
|
102
|
+
version: '1.6'
|
|
92
103
|
name: bundler
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
version: "1.6"
|
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
105
|
+
requirements:
|
|
106
|
+
- - "~>"
|
|
107
|
+
- !ruby/object:Gem::Version
|
|
108
|
+
version: '1.6'
|
|
99
109
|
type: :development
|
|
100
|
-
version_requirements: *id010
|
|
101
|
-
- !ruby/object:Gem::Dependency
|
|
102
|
-
name: rake
|
|
103
110
|
prerelease: false
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
111
|
+
- !ruby/object:Gem::Dependency
|
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
|
113
|
+
requirements:
|
|
114
|
+
- - "~>"
|
|
115
|
+
- !ruby/object:Gem::Version
|
|
116
|
+
version: '10.3'
|
|
117
|
+
name: rake
|
|
118
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
119
|
+
requirements:
|
|
120
|
+
- - "~>"
|
|
121
|
+
- !ruby/object:Gem::Version
|
|
122
|
+
version: '10.3'
|
|
109
123
|
type: :development
|
|
110
|
-
version_requirements: *id011
|
|
111
|
-
- !ruby/object:Gem::Dependency
|
|
112
|
-
name: pry
|
|
113
124
|
prerelease: false
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
125
|
+
- !ruby/object:Gem::Dependency
|
|
126
|
+
requirement: !ruby/object:Gem::Requirement
|
|
127
|
+
requirements:
|
|
128
|
+
- - "~>"
|
|
129
|
+
- !ruby/object:Gem::Version
|
|
130
|
+
version: '0.9'
|
|
131
|
+
name: pry
|
|
132
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
133
|
+
requirements:
|
|
134
|
+
- - "~>"
|
|
135
|
+
- !ruby/object:Gem::Version
|
|
136
|
+
version: '0.9'
|
|
119
137
|
type: :development
|
|
120
|
-
version_requirements: *id012
|
|
121
|
-
- !ruby/object:Gem::Dependency
|
|
122
|
-
name: pry-rescue
|
|
123
138
|
prerelease: false
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
139
|
+
- !ruby/object:Gem::Dependency
|
|
140
|
+
requirement: !ruby/object:Gem::Requirement
|
|
141
|
+
requirements:
|
|
142
|
+
- - "~>"
|
|
143
|
+
- !ruby/object:Gem::Version
|
|
144
|
+
version: '1.4'
|
|
145
|
+
name: pry-rescue
|
|
146
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
147
|
+
requirements:
|
|
148
|
+
- - "~>"
|
|
149
|
+
- !ruby/object:Gem::Version
|
|
150
|
+
version: '1.4'
|
|
128
151
|
type: :development
|
|
129
|
-
version_requirements: *id014
|
|
130
|
-
- !ruby/object:Gem::Dependency
|
|
131
|
-
name: rspec
|
|
132
152
|
prerelease: false
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
153
|
+
- !ruby/object:Gem::Dependency
|
|
154
|
+
requirement: !ruby/object:Gem::Requirement
|
|
155
|
+
requirements:
|
|
156
|
+
- - "~>"
|
|
157
|
+
- !ruby/object:Gem::Version
|
|
158
|
+
version: '3.0'
|
|
159
|
+
name: rspec
|
|
160
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
161
|
+
requirements:
|
|
162
|
+
- - "~>"
|
|
163
|
+
- !ruby/object:Gem::Version
|
|
164
|
+
version: '3.0'
|
|
138
165
|
type: :development
|
|
139
|
-
version_requirements: *id015
|
|
140
|
-
- !ruby/object:Gem::Dependency
|
|
141
|
-
name: rspec-its
|
|
142
166
|
prerelease: false
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
167
|
+
- !ruby/object:Gem::Dependency
|
|
168
|
+
requirement: !ruby/object:Gem::Requirement
|
|
169
|
+
requirements:
|
|
170
|
+
- - "~>"
|
|
171
|
+
- !ruby/object:Gem::Version
|
|
172
|
+
version: '1.0'
|
|
173
|
+
name: rspec-its
|
|
174
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
175
|
+
requirements:
|
|
176
|
+
- - "~>"
|
|
177
|
+
- !ruby/object:Gem::Version
|
|
178
|
+
version: '1.0'
|
|
147
179
|
type: :development
|
|
148
|
-
version_requirements: *id017
|
|
149
|
-
- !ruby/object:Gem::Dependency
|
|
150
|
-
name: fivemat
|
|
151
180
|
prerelease: false
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
181
|
+
- !ruby/object:Gem::Dependency
|
|
182
|
+
requirement: !ruby/object:Gem::Requirement
|
|
183
|
+
requirements:
|
|
184
|
+
- - "~>"
|
|
185
|
+
- !ruby/object:Gem::Version
|
|
186
|
+
version: '1.3'
|
|
187
|
+
name: fivemat
|
|
188
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
189
|
+
requirements:
|
|
190
|
+
- - "~>"
|
|
191
|
+
- !ruby/object:Gem::Version
|
|
192
|
+
version: '1.3'
|
|
157
193
|
type: :development
|
|
158
|
-
|
|
159
|
-
description:
|
|
194
|
+
prerelease: false
|
|
195
|
+
description: An experimental language on the Rubinius VM
|
|
160
196
|
email: joe.eli.mac@gmail.com
|
|
161
|
-
executables:
|
|
197
|
+
executables:
|
|
162
198
|
- myco
|
|
163
199
|
extensions: []
|
|
164
|
-
|
|
165
200
|
extra_rdoc_files: []
|
|
166
|
-
|
|
167
|
-
files:
|
|
201
|
+
files:
|
|
168
202
|
- LICENSE
|
|
203
|
+
- README.md
|
|
169
204
|
- bin/myco
|
|
170
205
|
- lib/myco.rb
|
|
171
206
|
- lib/myco/backtrace.rb
|
|
@@ -178,16 +213,24 @@ files:
|
|
|
178
213
|
- lib/myco/bootstrap/instance.rb
|
|
179
214
|
- lib/myco/bootstrap/meme.rb
|
|
180
215
|
- lib/myco/bootstrap/void.rb
|
|
216
|
+
- lib/myco/code_loader.rb
|
|
181
217
|
- lib/myco/command.my
|
|
218
|
+
- lib/myco/command/inoculate.my
|
|
219
|
+
- lib/myco/core/BasicDecorators.my
|
|
182
220
|
- lib/myco/core/BasicObject.my
|
|
183
221
|
- lib/myco/core/Category.my
|
|
184
222
|
- lib/myco/core/Decorator.my
|
|
185
223
|
- lib/myco/core/FileToplevel.my
|
|
224
|
+
- lib/myco/core/Myco.my
|
|
186
225
|
- lib/myco/core/Object.my
|
|
187
226
|
- lib/myco/core/Switch.my
|
|
188
227
|
- lib/myco/eval.rb
|
|
228
|
+
- lib/myco/misc.rb
|
|
189
229
|
- lib/myco/parser.rb
|
|
190
230
|
- lib/myco/parser/ast.rb
|
|
231
|
+
- lib/myco/parser/ast/argument_assembly.rb
|
|
232
|
+
- lib/myco/parser/ast/array_assembly.rb
|
|
233
|
+
- lib/myco/parser/ast/branch_operator.rb
|
|
191
234
|
- lib/myco/parser/ast/constant_access.rb
|
|
192
235
|
- lib/myco/parser/ast/constant_define.rb
|
|
193
236
|
- lib/myco/parser/ast/constant_reopen.rb
|
|
@@ -198,50 +241,77 @@ files:
|
|
|
198
241
|
- lib/myco/parser/ast/declare_object.rb
|
|
199
242
|
- lib/myco/parser/ast/declare_string.rb
|
|
200
243
|
- lib/myco/parser/ast/invoke.rb
|
|
244
|
+
- lib/myco/parser/ast/invoke_method.rb
|
|
201
245
|
- lib/myco/parser/ast/local_variable_access_ambiguous.rb
|
|
202
246
|
- lib/myco/parser/ast/misc.rb
|
|
203
247
|
- lib/myco/parser/ast/myco_module_scope.rb
|
|
204
248
|
- lib/myco/parser/ast/quest.rb
|
|
205
|
-
- lib/myco/parser/
|
|
206
|
-
- lib/myco/parser/
|
|
207
|
-
- lib/myco/parser/
|
|
208
|
-
- lib/myco/parser/
|
|
209
|
-
- lib/myco/parser/
|
|
210
|
-
- lib/myco/parser/
|
|
211
|
-
- lib/myco/parser/
|
|
212
|
-
- lib/myco/parser/
|
|
213
|
-
- lib/myco/parser/
|
|
249
|
+
- lib/myco/parser/ast/to_ruby.rb
|
|
250
|
+
- lib/myco/parser/ast/to_ruby/array_assembly.rb
|
|
251
|
+
- lib/myco/parser/ast/to_ruby/block.rb
|
|
252
|
+
- lib/myco/parser/ast/to_ruby/block_pass.rb
|
|
253
|
+
- lib/myco/parser/ast/to_ruby/branch_operator.rb
|
|
254
|
+
- lib/myco/parser/ast/to_ruby/constant_access.rb
|
|
255
|
+
- lib/myco/parser/ast/to_ruby/constant_assignment.rb
|
|
256
|
+
- lib/myco/parser/ast/to_ruby/constant_define.rb
|
|
257
|
+
- lib/myco/parser/ast/to_ruby/constant_reopen.rb
|
|
258
|
+
- lib/myco/parser/ast/to_ruby/declare_category.rb
|
|
259
|
+
- lib/myco/parser/ast/to_ruby/declare_decorator.rb
|
|
260
|
+
- lib/myco/parser/ast/to_ruby/declare_file.rb
|
|
261
|
+
- lib/myco/parser/ast/to_ruby/declare_meme.rb
|
|
262
|
+
- lib/myco/parser/ast/to_ruby/declare_object.rb
|
|
263
|
+
- lib/myco/parser/ast/to_ruby/declare_string.rb
|
|
264
|
+
- lib/myco/parser/ast/to_ruby/dynamic_string.rb
|
|
265
|
+
- lib/myco/parser/ast/to_ruby/dynamic_symbol.rb
|
|
266
|
+
- lib/myco/parser/ast/to_ruby/eval_expression.rb
|
|
267
|
+
- lib/myco/parser/ast/to_ruby/false_literal.rb
|
|
268
|
+
- lib/myco/parser/ast/to_ruby/hash_literal.rb
|
|
269
|
+
- lib/myco/parser/ast/to_ruby/invoke.rb
|
|
270
|
+
- lib/myco/parser/ast/to_ruby/invoke_method.rb
|
|
271
|
+
- lib/myco/parser/ast/to_ruby/iter.rb
|
|
272
|
+
- lib/myco/parser/ast/to_ruby/local_variable_access_ambiguous.rb
|
|
273
|
+
- lib/myco/parser/ast/to_ruby/local_variable_assignment.rb
|
|
274
|
+
- lib/myco/parser/ast/to_ruby/myco_module_scope.rb
|
|
275
|
+
- lib/myco/parser/ast/to_ruby/null_literal.rb
|
|
276
|
+
- lib/myco/parser/ast/to_ruby/parameters.rb
|
|
277
|
+
- lib/myco/parser/ast/to_ruby/quest.rb
|
|
278
|
+
- lib/myco/parser/ast/to_ruby/return.rb
|
|
279
|
+
- lib/myco/parser/ast/to_ruby/scoped_constant.rb
|
|
280
|
+
- lib/myco/parser/ast/to_ruby/self.rb
|
|
281
|
+
- lib/myco/parser/ast/to_ruby/splat_value.rb
|
|
282
|
+
- lib/myco/parser/ast/to_ruby/string_literal.rb
|
|
283
|
+
- lib/myco/parser/ast/to_ruby/symbol_literal.rb
|
|
284
|
+
- lib/myco/parser/ast/to_ruby/toplevel_constant.rb
|
|
285
|
+
- lib/myco/parser/ast/to_ruby/true_literal.rb
|
|
286
|
+
- lib/myco/parser/ast/to_ruby/void_literal.rb
|
|
214
287
|
- lib/myco/parser/peg_parser.rb
|
|
215
|
-
- lib/myco/tools/
|
|
288
|
+
- lib/myco/tools/BasicCommand.my
|
|
289
|
+
- lib/myco/tools/Generator.my
|
|
216
290
|
- lib/myco/tools/mycompile.my
|
|
217
291
|
- lib/myco/toolset.rb
|
|
218
292
|
- lib/myco/version.rb
|
|
219
293
|
homepage: https://github.com/jemc/myco/
|
|
220
|
-
licenses:
|
|
221
|
-
- Copyright 2013-
|
|
294
|
+
licenses:
|
|
295
|
+
- Copyright 2013-2015 Joe McIlvain. All rights reserved.
|
|
222
296
|
metadata: {}
|
|
223
|
-
|
|
224
297
|
post_install_message:
|
|
225
298
|
rdoc_options: []
|
|
226
|
-
|
|
227
|
-
require_paths:
|
|
299
|
+
require_paths:
|
|
228
300
|
- lib
|
|
229
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
|
230
|
-
requirements:
|
|
301
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
302
|
+
requirements:
|
|
303
|
+
- - ">="
|
|
304
|
+
- !ruby/object:Gem::Version
|
|
305
|
+
version: '0'
|
|
306
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
307
|
+
requirements:
|
|
231
308
|
- - ">="
|
|
232
|
-
- !ruby/object:Gem::Version
|
|
233
|
-
version:
|
|
234
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
235
|
-
requirements:
|
|
236
|
-
- - ">"
|
|
237
|
-
- !ruby/object:Gem::Version
|
|
238
|
-
version: 1.3.1
|
|
309
|
+
- !ruby/object:Gem::Version
|
|
310
|
+
version: '0'
|
|
239
311
|
requirements: []
|
|
240
|
-
|
|
241
312
|
rubyforge_project:
|
|
242
|
-
rubygems_version: 2.
|
|
313
|
+
rubygems_version: 2.4.5
|
|
243
314
|
signing_key:
|
|
244
315
|
specification_version: 4
|
|
245
|
-
summary:
|
|
316
|
+
summary: An experimental language on the Rubinius VM
|
|
246
317
|
test_files: []
|
|
247
|
-
|