Carlos Brando

Nome do Jogo

Ruby + C + Assembly = Oxente!

Nos dias 6 e 7 de agosto desse ano estive presente na segunda edição do Oxente Rails em Natal no Rio Grande do Norte. E para variar o evento superou as expectativas. Programadores de qualquer linguagem e pessoas interessadas em empreendedorismo não podem perder esse evento, simples assim.

Abaixo estão os slides da minha apresentação e um trecho de código que será facilmente entendido por aqueles que assistiram a minha palestra.

Se você pretende executar o código abaixo é necessário instalar a gem RubyInline antes:

gem install RubyInline

Segue a brincadeira:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
require "rubygems"
require "inline"

class << self
  inline do |builder|
    builder.add_compile_flags '-fasm-blocks'
    builder.c "
      int sum(int num1, int num2) {
        int result;
    
        __asm__{
          mov eax, num1
          mov ebx, num2
          add eax, ebx
          mov result, eax
        }
    
        return result;
      }
    "
  end
end

puts sum(2, 3)

Se você não pôde estar presente, a boa notícia é que esse ano todas as palestras foram gravadas e devem ser disponibilizadas em breve!

Comments