arnoldc.rb 1.0.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 -0
- data/README.md +297 -0
- data/arnoldc.rb.gemspec +17 -0
- data/bin/arnoldc.rb +68 -0
- data/samples/HelloWorld.arnoldc +3 -0
- data/samples/file.arnoldc +25 -0
- data/samples/fizzbuzz.arnoldc +87 -0
- metadata +65 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 3bc9f4118a8f08481fa84f42e2dab588c56ac730
|
4
|
+
data.tar.gz: c2e9b18cfc1ca0bb1dec386d2349f14879784aca
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: b32be5ecec2e527b37667fe77003b2f70fc3d52ba553713caadaebe856f772d1cb82254770cefdc9905639c9f608856a0fcfcda9a6fdf21475f21b06a589d047
|
7
|
+
data.tar.gz: fccc33994aa1a0a2cfb3e8183ce8af649ef6d2f61bd8e4c24fc64e485df9a0bace8359a55bb37d68e936e739d7e53b1a4e9682cd9c6086ebd049139c009d52c9
|
data/README.md
ADDED
@@ -0,0 +1,297 @@
|
|
1
|
+
# arnoldc.rb
|
2
|
+
|
3
|
+
[ArnoldC](https://github.com/lhartikk/ArnoldC) on top of any Ruby Virtual Machine.
|
4
|
+
|
5
|
+
## INSTALLATION
|
6
|
+
|
7
|
+
gem install arnoldc
|
8
|
+
|
9
|
+
## USAGE
|
10
|
+
|
11
|
+
```ruby
|
12
|
+
λ arnoldc.rb my_script.arnoldc
|
13
|
+
```
|
14
|
+
|
15
|
+
Example:
|
16
|
+
|
17
|
+
```ruby
|
18
|
+
λ arnoldc.rb samples/fizzbuzz.arnoldc
|
19
|
+
arnoldc.rb...
|
20
|
+
|
21
|
+
1
|
22
|
+
2
|
23
|
+
Fizz
|
24
|
+
4
|
25
|
+
Buzz
|
26
|
+
Fizz
|
27
|
+
7
|
28
|
+
8
|
29
|
+
Fizz
|
30
|
+
Buzz
|
31
|
+
11
|
32
|
+
Fizz
|
33
|
+
13
|
34
|
+
14
|
35
|
+
FizzBuzz
|
36
|
+
16
|
37
|
+
17
|
38
|
+
Fizz
|
39
|
+
19
|
40
|
+
Buzz
|
41
|
+
Fizz
|
42
|
+
22
|
43
|
+
23
|
44
|
+
Fizz
|
45
|
+
Buzz
|
46
|
+
26
|
47
|
+
Fizz
|
48
|
+
28
|
49
|
+
29
|
50
|
+
FizzBuzz
|
51
|
+
31
|
52
|
+
32
|
53
|
+
Fizz
|
54
|
+
34
|
55
|
+
Buzz
|
56
|
+
Fizz
|
57
|
+
37
|
58
|
+
38
|
59
|
+
Fizz
|
60
|
+
Buzz
|
61
|
+
41
|
62
|
+
Fizz
|
63
|
+
43
|
64
|
+
44
|
65
|
+
FizzBuzz
|
66
|
+
46
|
67
|
+
47
|
68
|
+
Fizz
|
69
|
+
49
|
70
|
+
Buzz
|
71
|
+
Fizz
|
72
|
+
52
|
73
|
+
53
|
74
|
+
Fizz
|
75
|
+
Buzz
|
76
|
+
56
|
77
|
+
Fizz
|
78
|
+
58
|
79
|
+
59
|
80
|
+
FizzBuzz
|
81
|
+
61
|
82
|
+
62
|
83
|
+
Fizz
|
84
|
+
64
|
85
|
+
Buzz
|
86
|
+
Fizz
|
87
|
+
67
|
88
|
+
68
|
89
|
+
Fizz
|
90
|
+
Buzz
|
91
|
+
71
|
92
|
+
Fizz
|
93
|
+
73
|
94
|
+
74
|
95
|
+
FizzBuzz
|
96
|
+
76
|
97
|
+
77
|
98
|
+
Fizz
|
99
|
+
79
|
100
|
+
Buzz
|
101
|
+
Fizz
|
102
|
+
82
|
103
|
+
83
|
104
|
+
Fizz
|
105
|
+
Buzz
|
106
|
+
86
|
107
|
+
Fizz
|
108
|
+
88
|
109
|
+
89
|
110
|
+
FizzBuzz
|
111
|
+
91
|
112
|
+
92
|
113
|
+
Fizz
|
114
|
+
94
|
115
|
+
Buzz
|
116
|
+
Fizz
|
117
|
+
97
|
118
|
+
98
|
119
|
+
Fizz
|
120
|
+
Buzz
|
121
|
+
|
122
|
+
Exiting.
|
123
|
+
```
|
124
|
+
|
125
|
+
You can turn on debug mode by using the -w option of the Ruby VM:
|
126
|
+
|
127
|
+
```ruby
|
128
|
+
/tmp/arnoldc.rb [±] λ ruby arnoldc.rb samples/fizzbuzz.arnoldc
|
129
|
+
arnoldc.rb...
|
130
|
+
L0000: def main
|
131
|
+
L0001: isLessThan100 = true
|
132
|
+
L0002: n = 0
|
133
|
+
L0003: multiple = true
|
134
|
+
L0004: while isLessThan100
|
135
|
+
L0005: n = \
|
136
|
+
L0006: n\
|
137
|
+
L0007: + 1
|
138
|
+
L0008: isLessThan100 = \
|
139
|
+
L0009: 100\
|
140
|
+
L0010: > n
|
141
|
+
L0011: multiple = \
|
142
|
+
L0012: divisible(n, 15)
|
143
|
+
L0013: if multiple
|
144
|
+
L0014: puts "FizzBuzz"
|
145
|
+
L0015: else
|
146
|
+
L0016: multiple = \
|
147
|
+
L0017: divisible(n, 3)
|
148
|
+
L0018: if multiple
|
149
|
+
L0019: puts "Fizz"
|
150
|
+
L0020: else
|
151
|
+
L0021: multiple = \
|
152
|
+
L0022: divisible(n, 5)
|
153
|
+
L0023: if multiple
|
154
|
+
L0024: puts "Buzz"
|
155
|
+
L0025: else
|
156
|
+
L0026: puts n
|
157
|
+
L0027: end
|
158
|
+
L0028: end
|
159
|
+
L0029: end
|
160
|
+
L0030: end
|
161
|
+
L0031: end
|
162
|
+
L0032: def modulo(
|
163
|
+
L0033: dividend,
|
164
|
+
L0034: divisor,
|
165
|
+
L0035: unused=0)
|
166
|
+
L0036: quotient = 0
|
167
|
+
L0037: remainder = 0
|
168
|
+
L0038: product = 0
|
169
|
+
L0039: quotient = \
|
170
|
+
L0040: dividend\
|
171
|
+
L0041: * 1/divisor
|
172
|
+
L0042: product = \
|
173
|
+
L0043: divisor\
|
174
|
+
L0044: * quotient
|
175
|
+
L0045: remainder = \
|
176
|
+
L0046: dividend\
|
177
|
+
L0047: - product
|
178
|
+
L0048: return remainder
|
179
|
+
L0049: end
|
180
|
+
L0050: def divisible(
|
181
|
+
L0051: dividend,
|
182
|
+
L0052: divisor,
|
183
|
+
L0053: unused=0)
|
184
|
+
L0054: result = 0
|
185
|
+
L0055: result = \
|
186
|
+
L0056: modulo(dividend, divisor)
|
187
|
+
L0057: isZero = 0
|
188
|
+
L0058: isZero = \
|
189
|
+
L0059: result\
|
190
|
+
L0060: == 0
|
191
|
+
L0061: return isZero
|
192
|
+
L0062: end
|
193
|
+
L0063: main
|
194
|
+
|
195
|
+
1
|
196
|
+
2
|
197
|
+
Fizz
|
198
|
+
4
|
199
|
+
Buzz
|
200
|
+
Fizz
|
201
|
+
7
|
202
|
+
8
|
203
|
+
Fizz
|
204
|
+
Buzz
|
205
|
+
11
|
206
|
+
Fizz
|
207
|
+
13
|
208
|
+
14
|
209
|
+
FizzBuzz
|
210
|
+
16
|
211
|
+
17
|
212
|
+
Fizz
|
213
|
+
19
|
214
|
+
Buzz
|
215
|
+
Fizz
|
216
|
+
22
|
217
|
+
23
|
218
|
+
Fizz
|
219
|
+
Buzz
|
220
|
+
26
|
221
|
+
Fizz
|
222
|
+
28
|
223
|
+
29
|
224
|
+
FizzBuzz
|
225
|
+
31
|
226
|
+
32
|
227
|
+
Fizz
|
228
|
+
34
|
229
|
+
Buzz
|
230
|
+
Fizz
|
231
|
+
37
|
232
|
+
38
|
233
|
+
Fizz
|
234
|
+
Buzz
|
235
|
+
41
|
236
|
+
Fizz
|
237
|
+
43
|
238
|
+
44
|
239
|
+
FizzBuzz
|
240
|
+
46
|
241
|
+
47
|
242
|
+
Fizz
|
243
|
+
49
|
244
|
+
Buzz
|
245
|
+
Fizz
|
246
|
+
52
|
247
|
+
53
|
248
|
+
Fizz
|
249
|
+
Buzz
|
250
|
+
56
|
251
|
+
Fizz
|
252
|
+
58
|
253
|
+
59
|
254
|
+
FizzBuzz
|
255
|
+
61
|
256
|
+
62
|
257
|
+
Fizz
|
258
|
+
64
|
259
|
+
Buzz
|
260
|
+
Fizz
|
261
|
+
67
|
262
|
+
68
|
263
|
+
Fizz
|
264
|
+
Buzz
|
265
|
+
71
|
266
|
+
Fizz
|
267
|
+
73
|
268
|
+
74
|
269
|
+
FizzBuzz
|
270
|
+
76
|
271
|
+
77
|
272
|
+
Fizz
|
273
|
+
79
|
274
|
+
Buzz
|
275
|
+
Fizz
|
276
|
+
82
|
277
|
+
83
|
278
|
+
Fizz
|
279
|
+
Buzz
|
280
|
+
86
|
281
|
+
Fizz
|
282
|
+
88
|
283
|
+
89
|
284
|
+
FizzBuzz
|
285
|
+
91
|
286
|
+
92
|
287
|
+
Fizz
|
288
|
+
94
|
289
|
+
Buzz
|
290
|
+
Fizz
|
291
|
+
97
|
292
|
+
98
|
293
|
+
Fizz
|
294
|
+
Buzz
|
295
|
+
|
296
|
+
Exiting.
|
297
|
+
```
|
data/arnoldc.rb.gemspec
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
Gem::Specification.new do |spec|
|
4
|
+
spec.name = "arnoldc.rb"
|
5
|
+
spec.version = "1.0.0"
|
6
|
+
spec.authors = ["Franck Verrot"]
|
7
|
+
spec.email = ["franck@verrot.fr"]
|
8
|
+
spec.summary = %q{arnoldc Ruby implementation}
|
9
|
+
spec.description = spec.summary
|
10
|
+
spec.homepage = "https://github.com/franckverrot/arnoldc.rb"
|
11
|
+
spec.license = "GPLv3"
|
12
|
+
|
13
|
+
spec.files = `git ls-files -z`.split("\x0")
|
14
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
15
|
+
|
16
|
+
spec.add_development_dependency "bundler", "~> 1.5"
|
17
|
+
end
|
data/bin/arnoldc.rb
ADDED
@@ -0,0 +1,68 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# COMPUTE FILE NAME
|
3
|
+
filename = ARGV.fetch(0) { raise ArgumentError, 'You should provide a script name. eg: ./arnoldc.rb my_file.arnoldc' }
|
4
|
+
|
5
|
+
# READ FILE
|
6
|
+
data = File.read(filename)
|
7
|
+
|
8
|
+
# DROP LEADING SPACES
|
9
|
+
data.gsub!(/^\s*(.*)/) { $1 }
|
10
|
+
|
11
|
+
# MAIN PROGRAM
|
12
|
+
data.gsub!(/IT'S SHOWTIME/,"def main")
|
13
|
+
data.gsub!(/(HASTA LA VISTA, BABY|CHILL|YOU HAVE BEEN TERMINATED|YOU HAVE NO RESPECT FOR LOGIC)/,"end")
|
14
|
+
|
15
|
+
# MACROS
|
16
|
+
data.gsub!(/@NO PROBLEMO/,"true")
|
17
|
+
data.gsub!(/@I LIED/,"false")
|
18
|
+
|
19
|
+
# CONDITIONALS
|
20
|
+
data.gsub!(/BECAUSE I'M GOING TO SAY PLEASE (\w*)/) { "if #{$1}" }
|
21
|
+
data.gsub!(/BULLSHIT/,"else")
|
22
|
+
|
23
|
+
# LOOP
|
24
|
+
data.gsub!(/STICK AROUND (\w*)/) { "while #{$1}" }
|
25
|
+
|
26
|
+
# ASSIGNMENTS
|
27
|
+
data.gsub!(/HEY CHRISTMAS TREE (\w+)\nYOU SET US UP (\w*)/) { "#{$1} = #{$2}" }
|
28
|
+
data.gsub!(/GET TO THE CHOPPER (\w+)/) { "#{$1} = \\" }
|
29
|
+
data.gsub!(/GET YOUR ASS TO MARS (\w+)/) { "#{$1} = \\" }
|
30
|
+
|
31
|
+
# METHODS
|
32
|
+
data.gsub!(/LISTEN TO ME VERY CAREFULLY (\w+)/) { "def #{$1}(" }
|
33
|
+
data.gsub!(/I NEED YOUR CLOTHES YOUR BOOTS AND YOUR MOTORCYCLE (\w+)/) { "#{$1}," }
|
34
|
+
|
35
|
+
# METHOD CALLS
|
36
|
+
data.gsub!(/DO IT NOW (\w*) (\w+) (\w+)/) { "#{$1}(#{$2}, #{$3})" }
|
37
|
+
data.gsub!(/HERE IS MY INVITATION (\w+)/) { "#{$1}\\" }
|
38
|
+
|
39
|
+
# ARITHMETICS
|
40
|
+
data.gsub!(/GET DOWN (\w+)/) { "- #{$1}" }
|
41
|
+
data.gsub!(/GET UP (\w+)/) { "+ #{$1}" }
|
42
|
+
data.gsub!(/YOU'RE FIRED (\w+)/) { "* #{$1}" }
|
43
|
+
data.gsub!(/HE HAD TO SPLIT (\w+)/) { "* 1/#{$1}" }
|
44
|
+
|
45
|
+
# COMPARISONS
|
46
|
+
data.gsub!(/YOU ARE NOT YOU YOU ARE ME (\w+)/) { "== #{$1}" }
|
47
|
+
data.gsub!(/LET OFF SOME STEAM BENNET (\w+)/) { "> #{$1}" }
|
48
|
+
data.gsub!(/CONSIDER THAT A DIVORCE (\w+)/) { "|| #{$1}" }
|
49
|
+
data.gsub!(/KNOCK KNOCK (\w+)/) { "&& #{$1}" }
|
50
|
+
|
51
|
+
# HACKS :-D
|
52
|
+
data.gsub!(/ENOUGH TALK/) { "" }
|
53
|
+
data.gsub!(/GIVE THESE PEOPLE AIR/) { "unused=0)" }
|
54
|
+
data.gsub!(/I'LL BE BACK (\w+)/) { "return #{$1}" }
|
55
|
+
data.gsub!(/TALK TO THE HAND (.*)/) { "puts #{$1}" }
|
56
|
+
|
57
|
+
# WRAPPING THE SH*T UP
|
58
|
+
locs = data.split("\n").reject { |l| l.empty? } + ["main"]
|
59
|
+
data = locs.map.with_index { |l,i| "L%04d: %s" % [i, l] }.join("\n")
|
60
|
+
|
61
|
+
code = locs.join("\n")
|
62
|
+
puts "arnoldc.rb..."
|
63
|
+
puts data if $-w
|
64
|
+
puts
|
65
|
+
|
66
|
+
eval(code)
|
67
|
+
|
68
|
+
puts "\nExiting."
|
@@ -0,0 +1,25 @@
|
|
1
|
+
IT'S SHOWTIME
|
2
|
+
HEY CHRISTMAS TREE limit
|
3
|
+
YOU SET US UP 10
|
4
|
+
HEY CHRISTMAS TREE index
|
5
|
+
YOU SET US UP 1
|
6
|
+
HEY CHRISTMAS TREE squared
|
7
|
+
YOU SET US UP 1
|
8
|
+
HEY CHRISTMAS TREE loop
|
9
|
+
YOU SET US UP @NO PROBLEMO
|
10
|
+
STICK AROUND loop
|
11
|
+
GET TO THE CHOPPER squared
|
12
|
+
HERE IS MY INVITATION index
|
13
|
+
YOU'RE FIRED index
|
14
|
+
ENOUGH TALK
|
15
|
+
TALK TO THE HAND squared
|
16
|
+
GET TO THE CHOPPER loop
|
17
|
+
HERE IS MY INVITATION limit
|
18
|
+
LET OFF SOME STEAM BENNET index
|
19
|
+
ENOUGH TALK
|
20
|
+
GET TO THE CHOPPER index
|
21
|
+
HERE IS MY INVITATION index
|
22
|
+
GET UP 1
|
23
|
+
ENOUGH TALK
|
24
|
+
CHILL
|
25
|
+
YOU HAVE BEEN TERMINATED
|
@@ -0,0 +1,87 @@
|
|
1
|
+
IT'S SHOWTIME
|
2
|
+
|
3
|
+
HEY CHRISTMAS TREE isLessThan100
|
4
|
+
YOU SET US UP @NO PROBLEMO
|
5
|
+
HEY CHRISTMAS TREE n
|
6
|
+
YOU SET US UP 0
|
7
|
+
HEY CHRISTMAS TREE multiple
|
8
|
+
YOU SET US UP @NO PROBLEMO
|
9
|
+
|
10
|
+
STICK AROUND isLessThan100
|
11
|
+
GET TO THE CHOPPER n
|
12
|
+
HERE IS MY INVITATION n
|
13
|
+
GET UP 1
|
14
|
+
ENOUGH TALK
|
15
|
+
|
16
|
+
GET TO THE CHOPPER isLessThan100
|
17
|
+
HERE IS MY INVITATION 100
|
18
|
+
LET OFF SOME STEAM BENNET n
|
19
|
+
ENOUGH TALK
|
20
|
+
|
21
|
+
GET YOUR ASS TO MARS multiple
|
22
|
+
DO IT NOW divisible n 15
|
23
|
+
BECAUSE I'M GOING TO SAY PLEASE multiple
|
24
|
+
TALK TO THE HAND "FizzBuzz"
|
25
|
+
BULLSHIT
|
26
|
+
GET YOUR ASS TO MARS multiple
|
27
|
+
DO IT NOW divisible n 3
|
28
|
+
BECAUSE I'M GOING TO SAY PLEASE multiple
|
29
|
+
TALK TO THE HAND "Fizz"
|
30
|
+
BULLSHIT
|
31
|
+
GET YOUR ASS TO MARS multiple
|
32
|
+
DO IT NOW divisible n 5
|
33
|
+
BECAUSE I'M GOING TO SAY PLEASE multiple
|
34
|
+
TALK TO THE HAND "Buzz"
|
35
|
+
BULLSHIT
|
36
|
+
TALK TO THE HAND n
|
37
|
+
YOU HAVE NO RESPECT FOR LOGIC
|
38
|
+
YOU HAVE NO RESPECT FOR LOGIC
|
39
|
+
YOU HAVE NO RESPECT FOR LOGIC
|
40
|
+
CHILL
|
41
|
+
|
42
|
+
YOU HAVE BEEN TERMINATED
|
43
|
+
|
44
|
+
LISTEN TO ME VERY CAREFULLY modulo
|
45
|
+
I NEED YOUR CLOTHES YOUR BOOTS AND YOUR MOTORCYCLE dividend
|
46
|
+
I NEED YOUR CLOTHES YOUR BOOTS AND YOUR MOTORCYCLE divisor
|
47
|
+
GIVE THESE PEOPLE AIR
|
48
|
+
HEY CHRISTMAS TREE quotient
|
49
|
+
YOU SET US UP 0
|
50
|
+
HEY CHRISTMAS TREE remainder
|
51
|
+
YOU SET US UP 0
|
52
|
+
HEY CHRISTMAS TREE product
|
53
|
+
YOU SET US UP 0
|
54
|
+
GET TO THE CHOPPER quotient
|
55
|
+
HERE IS MY INVITATION dividend
|
56
|
+
HE HAD TO SPLIT divisor
|
57
|
+
ENOUGH TALK
|
58
|
+
GET TO THE CHOPPER product
|
59
|
+
HERE IS MY INVITATION divisor
|
60
|
+
YOU'RE FIRED quotient
|
61
|
+
ENOUGH TALK
|
62
|
+
GET TO THE CHOPPER remainder
|
63
|
+
HERE IS MY INVITATION dividend
|
64
|
+
GET DOWN product
|
65
|
+
ENOUGH TALK
|
66
|
+
I'LL BE BACK remainder
|
67
|
+
HASTA LA VISTA, BABY
|
68
|
+
|
69
|
+
LISTEN TO ME VERY CAREFULLY divisible
|
70
|
+
I NEED YOUR CLOTHES YOUR BOOTS AND YOUR MOTORCYCLE dividend
|
71
|
+
I NEED YOUR CLOTHES YOUR BOOTS AND YOUR MOTORCYCLE divisor
|
72
|
+
GIVE THESE PEOPLE AIR
|
73
|
+
|
74
|
+
HEY CHRISTMAS TREE result
|
75
|
+
YOU SET US UP 0
|
76
|
+
GET YOUR ASS TO MARS result
|
77
|
+
DO IT NOW modulo dividend divisor
|
78
|
+
|
79
|
+
HEY CHRISTMAS TREE isZero
|
80
|
+
YOU SET US UP 0
|
81
|
+
GET TO THE CHOPPER isZero
|
82
|
+
HERE IS MY INVITATION result
|
83
|
+
YOU ARE NOT YOU YOU ARE ME 0
|
84
|
+
ENOUGH TALK
|
85
|
+
|
86
|
+
I'LL BE BACK isZero
|
87
|
+
HASTA LA VISTA, BABY
|
metadata
ADDED
@@ -0,0 +1,65 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: arnoldc.rb
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Franck Verrot
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-02-27 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.5'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.5'
|
27
|
+
description: arnoldc Ruby implementation
|
28
|
+
email:
|
29
|
+
- franck@verrot.fr
|
30
|
+
executables:
|
31
|
+
- arnoldc.rb
|
32
|
+
extensions: []
|
33
|
+
extra_rdoc_files: []
|
34
|
+
files:
|
35
|
+
- README.md
|
36
|
+
- arnoldc.rb.gemspec
|
37
|
+
- bin/arnoldc.rb
|
38
|
+
- samples/HelloWorld.arnoldc
|
39
|
+
- samples/file.arnoldc
|
40
|
+
- samples/fizzbuzz.arnoldc
|
41
|
+
homepage: https://github.com/franckverrot/arnoldc.rb
|
42
|
+
licenses:
|
43
|
+
- GPLv3
|
44
|
+
metadata: {}
|
45
|
+
post_install_message:
|
46
|
+
rdoc_options: []
|
47
|
+
require_paths:
|
48
|
+
- lib
|
49
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
55
|
+
requirements:
|
56
|
+
- - ">="
|
57
|
+
- !ruby/object:Gem::Version
|
58
|
+
version: '0'
|
59
|
+
requirements: []
|
60
|
+
rubyforge_project:
|
61
|
+
rubygems_version: 2.2.0
|
62
|
+
signing_key:
|
63
|
+
specification_version: 4
|
64
|
+
summary: arnoldc Ruby implementation
|
65
|
+
test_files: []
|