small doc

This commit is contained in:
Torsten Ruger 2014-04-16 12:45:36 +03:00
parent 8e0494f410
commit a7af1a4664
2 changed files with 53 additions and 1 deletions

View File

@ -5,6 +5,58 @@ Small steps on a long road, will nevertheless lead to the destination
Sorry about the Zen, but it feels like i'm about to walk to China.
Step 1
------
Produce binary that represent code. Traditionally called assembling, but there is no need for an external file
representation.
Ie only in ruby code do i want to create machine code.
First instructions are in fact assembling correctly. Meaning i have tests, and i can use objbump to verify the correct assembler code is disasembled
Step 2
------
Package the code into an executable. Run that and verufy it's output.
Currently hangin on the elf format.
Step 3
-------
Start parsing some simple code. Using Parslet.
Get the parse - compile - execute -verify cycle going.
Step 4
-------
Implement function calling to modularise.
Implement a way to call libc
Step 5
------
Implement classes, implement Core library of arrays/hash
Step 6
------
Implement Blocks
Step 7
------
Implement Exceptions
Step 8
-------
Celebrate New year 2020
Contributing to crystal
-----------------------

View File

@ -1,6 +1,6 @@
module Asm
module Arm
module Asm::Arm::InstructionTools
module InstructionTools
def reg_ref(arg)
if (not arg.is_a?(Asm::RegisterArgNode))
raise Asm::AssemblyError.new('argument must be a register', arg)