Ruby PowerPoint PPT Presentation

Post on 22-Feb-2016

116 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Ruby RAD but pretty Ruby + Silverlight == Ruby in the browser. CLR as we knew it. VB.NET. …. C#. - PowerPoint PPT Presentation

Transcript

Ruby <3 .NETIvan Porto Carrero

http://flanders.co.nz

The plan CLR, DLR, WTF?? All ur Rubyz are now belongs to us Ruby why should I care? Using RSpec for BDD Ruby + WPF => RAD but pretty Ruby + Silverlight == Ruby in the

browser

CLR as we knew it

Common Type system

Class Loader, GC, JIT, Execution Support

Security

Base Class Libraries

Common Language Runtime

C# VB.NET …

A better CLR

Common Type system

Class Loader, GC, JIT, Execution Support

Security

Base Class Libraries

Common Language Runtime

C# VB.NET IronPython

DLR Runtime

All ur Rubyz are now… MRI ‐ “The Normal” Ruby JRuby ‐ Sun MacRuby ‐ Apple IronRuby ‐ Microsoft Rubinius ‐ EngineYard MagLev ‐ Gemstone HotRuby

For me the purpose of life is partly to have joy. Programmers often feel joy when they can concentrate

on the creative side of programming, so Ruby is designed to make programmers happy.

- Yukihiro “Matz” Matsumoto

Why should I care?

Why should I care?

Actually, I'm trying to make Ruby natural, not simple. - Yukihiro “Matz” Matsumoto

Best of breed

If Python was the result of Lisp and C++ having a baby,Ruby is the result of Perl and Smalltalk having a baby.--MeowMeow Jones, 11/8/2001 on slashdot.

Duck typing

If it looks like a duck and acts like a duck it might as well be a duck

Metaprogramming

The computer should be doing the hard work. That's what it's paid to do, after all.-- Larry Wall

Metaprogramming

I don’t think the idea here is to save memory or speed. The idea behind metaprogramming is

to teach Ruby your conventions and let it do some guessing,

in order to save you some code. – Why, author of why’s poignant guide to Ruby

STOP!!!! Demo time

REPL

Read Eval Print Loop

Read Eval Print Loop

Read Eval Print Loop

Read Eval Print

STOP!!!! Demo time

Everything is an object

I invented the term Object-Oriented, and I can tell you I did not have C++ in mind.

-- Alan Kay

STOP!!!! Demo time

Classes are open

STOP!!!! Demo time

CLR classes open for business

Isn't this dangerous? What if someone changes the logic of + for math expressions?

No, because if one of your programmers overrides methods that break things –

you take them out in the parking lotand beat them with a rubber hose!

The language shouldn't prohibit us from doing powerful things.-- http://raibledesigns.com/rd/entry/oscon_monday_morning

STOP!!!! Demo time

Adding Iron to Ruby

I have always imagined that Paradise will be a kind of library.-- Jorge Luis Borges

STOP!!!! Demo time

Kweshiunz?

“A language that doesn't affect the way you think about programming is not worth knowing.”

-- Alan Perlis

go_to(http://ironruby.net).play.create.have_fun

top related