Linguagens Dinâmicas na
    Plataforma .NET
    IronPython e IronRuby
Alcides Fonseca
     MSP
Linguagens dinâmicas

   O próximo passo...
Linguagens dinâmicas?

•  Não há uma definição universal...
•  Interpretada
•  Tipagem dinâmica
•  Duck typing
Linguagens estáticas
• C/C++
• Java
• C#

Linguagens dinâmicas
• Javascript
• Python
• Ruby
Um bocadinho de história

•  CLR
•  Python.NET
•  Jim Hugunin – Jython
“How Microsoft screwed up
.NET for dynamic languages”
Pystone Benchmark
100K 

 80K 

 60K 
                                       101K
                                 90K
 40...
Now what?

•  IronPython
•  IronRuby
•  Visual Basic
•  JavaScript (EcmaScript 3.0)
E qualquer um o pode fazer!

•    IronLisp      •    Boo
•    IronScheme    •    Kobra
•    Smalltalk     •    Coldfusion
...
Dynamic
Languages



                Tools




            Applications
VS IronPython integration
•  Visual Studio 2005 e 2008
•  Visual Studio SDK

•  Syntax Highlighting
•  Autocompletion
•  G...
VS IronRuby integration

•  Ruby in Steel (pago)
  – For Ruby and Ruby on Rails
•  Ruby in Steel for IronRuby (grátis)
  –...
XNA

•  XNA Studio
  – C# (pelo menos não é C++!)


•  XNA + IronPython
  – Possível
  – Não recomendado
    •  Não corre ...
Use cases
Prototyping
Metodologias Ágeis
Acoplamento de Módulos
Automated Testing
DSLs
Administrative tasks
Design de Interfaces
Webdevelopment
IronPython/IronRuby + ASP.NET MVC
Webdesign
 Silverlight
Scripting language
para PowerUsers
Real World
  Usage
Second Life
Resolver
MySpace

~2500 servers
Resumindo

• Desenvolvimento rápido
• Programação de alto nível
Mais informação

•  http://codeplex.com/ironpython
•  http://www.ironruby.net




•  http://alcidesfonseca.com
•  me@alcid...
?
Linguagens Dinamicas - Tech Days 2008
Upcoming SlideShare
Loading in...5
×

Linguagens Dinamicas - Tech Days 2008

1,226

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,226
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
28
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Linguagens Dinamicas - Tech Days 2008

  1. 1. Linguagens Dinâmicas na Plataforma .NET IronPython e IronRuby
  2. 2. Alcides Fonseca MSP
  3. 3. Linguagens dinâmicas O próximo passo...
  4. 4. Linguagens dinâmicas? •  Não há uma definição universal... •  Interpretada •  Tipagem dinâmica •  Duck typing
  5. 5. Linguagens estáticas • C/C++ • Java • C# Linguagens dinâmicas • Javascript • Python • Ruby
  6. 6. Um bocadinho de história •  CLR •  Python.NET •  Jim Hugunin – Jython
  7. 7. “How Microsoft screwed up .NET for dynamic languages”
  8. 8. Pystone Benchmark 100K  80K  60K  101K 90K 40K  80K 46K 50K 20K  36K 0K 
  9. 9. Now what? •  IronPython •  IronRuby •  Visual Basic •  JavaScript (EcmaScript 3.0)
  10. 10. E qualquer um o pode fazer! •  IronLisp •  Boo •  IronScheme •  Kobra •  Smalltalk •  Coldfusion •  Nua •  PHP (Phalanger) •  Logo •  Toyscript •  LOLCODE
  11. 11. Dynamic Languages Tools Applications
  12. 12. VS IronPython integration •  Visual Studio 2005 e 2008 •  Visual Studio SDK •  Syntax Highlighting •  Autocompletion •  Gestor de Projecto •  Debugger •  Winforms and WPF(2008) designers
  13. 13. VS IronRuby integration •  Ruby in Steel (pago) – For Ruby and Ruby on Rails •  Ruby in Steel for IronRuby (grátis) – Syntax highlighting – Gestor de Projecto – Consola ruby integrada – Winforms designer
  14. 14. XNA •  XNA Studio – C# (pelo menos não é C++!) •  XNA + IronPython – Possível – Não recomendado •  Não corre em .NET Compact (Xbox 360 e WinMobile)
  15. 15. Use cases
  16. 16. Prototyping
  17. 17. Metodologias Ágeis
  18. 18. Acoplamento de Módulos
  19. 19. Automated Testing
  20. 20. DSLs
  21. 21. Administrative tasks
  22. 22. Design de Interfaces
  23. 23. Webdevelopment IronPython/IronRuby + ASP.NET MVC
  24. 24. Webdesign Silverlight
  25. 25. Scripting language para PowerUsers
  26. 26. Real World Usage
  27. 27. Second Life
  28. 28. Resolver
  29. 29. MySpace ~2500 servers
  30. 30. Resumindo • Desenvolvimento rápido • Programação de alto nível
  31. 31. Mais informação •  http://codeplex.com/ironpython •  http://www.ironruby.net •  http://alcidesfonseca.com •  me@alcidesfonseca.com
  32. 32. ?
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×