asmrb 0.0.2.6.1.5 → 0.0.2.6.1.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/asmrb.rb +9 -4
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9b3a0793158e9e95f455a2c148467f53fa40faa3
4
- data.tar.gz: 453c754d7ffd7037944c90590389f484a6b54dee
3
+ metadata.gz: 713532ba3b23d5a4d3c3a268c8e3d48866c9ecb3
4
+ data.tar.gz: e505983f28eb226d692acf8311047b9c0f0ec468
5
5
  SHA512:
6
- metadata.gz: 56c0c5e4192f05a38e1f9c688c1f234d440c987124f9bb3e3b3c33fc65053a7c694fa2ca5e50194e30cd3207b0e8d086fd90185a1188dce2b96dd6238e63ae99
7
- data.tar.gz: d34e1173478e234c8e07ab05b8c33e7d62f22da8cc7727fee9bc9c354b54a862ff542fe9cea83c66006551ca57dc96402d94b2766a8799898cf2f1bb3aeb107a
6
+ metadata.gz: 6e434911cf4cebb32dce27b76d1150efb518aef57923aeaeaaefd12daa0dd2104778880657b6452c44bc731d80c70229a19a415aef7fdf74a10fdd5059ff9c84
7
+ data.tar.gz: a8b8c88855449f8741f9c97a25caa103e1665eed62951ccfde442ab9b54817d59d8e7cd12e335c75a2b2c153c54c3859f32b545d5a8aa59eb8ac25c5f7d4a5d6
data/lib/asmrb.rb CHANGED
@@ -70,6 +70,11 @@ class Asmrb
70
70
  end
71
71
 
72
72
  OPS = {
73
+ "los" => lambda { | args |
74
+ args = @variables[args] if @variables.include?(args)
75
+ args.each {|arg| @stack.push arg}
76
+ },
77
+
73
78
  "lea" => lambda { | name |
74
79
  @variables[name] = @stack.pop
75
80
  },
@@ -79,7 +84,7 @@ class Asmrb
79
84
  },
80
85
 
81
86
  "cdr" => lambda { | lst |
82
- @stack.push @variables[lst].drop(@variables[lst].first)
87
+ @stack.push @variables[lst].drop 1
83
88
  },
84
89
 
85
90
  "car" => lambda { | lst |
@@ -92,7 +97,7 @@ class Asmrb
92
97
  @stack.push e
93
98
  },
94
99
 
95
- "dup" => lambda {
100
+ "dpl" => lambda {
96
101
  @stack.push @stack.last
97
102
  },
98
103
 
@@ -198,7 +203,7 @@ class Asmrb
198
203
  #binding.pry if @is_debug
199
204
  },
200
205
 
201
- "fun" => lambda {|name|
206
+ "fnc" => lambda {|name|
202
207
  args = []
203
208
  params = eval "$#{name}.params"
204
209
  params.times do
@@ -264,7 +269,7 @@ class Asmrb
264
269
  when "blo"
265
270
  create_label args.first
266
271
 
267
- when "def"
272
+ when "fun"
268
273
  @name = args.first
269
274
  #create_label args.first
270
275
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: asmrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2.6.1.5
4
+ version: 0.0.2.6.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Trung
@@ -10,7 +10,7 @@ bindir: bin
10
10
  cert_chain: []
11
11
  date: 2015-05-09 00:00:00.000000000 Z
12
12
  dependencies: []
13
- description: create a assembly-like function in ruby.
13
+ description: create a assembly-like toy language in ruby DSL.
14
14
  email: deulamco@gmail.com
15
15
  executables: []
16
16
  extensions: []