• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Jug dynamic languages_in_jvm
 

Jug dynamic languages_in_jvm

on

  • 814 views

 

Statistics

Views

Total Views
814
Views on SlideShare
756
Embed Views
58

Actions

Likes
2
Downloads
3
Comments
0

4 Embeds 58

http://jujo00obo2o234ungd3t8qjfcjrs3o6k-a-sites-opensocial.googleusercontent.com 49
http://jug.lv 5
http://www.jug.lv 3
http://jugpreview.tumblr.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Jug dynamic languages_in_jvm Jug dynamic languages_in_jvm Presentation Transcript

    • Alternative Languages on JVM Java User Group Latvia www.jug.lv
    • Agenda
        • Why alternative languages?
        • What are the options?
        • How to use them?
        • Meet today's leaders
          • JRuby
          • Groovy
          • Scala
        • Summary
    • Why Go Alternative?
        • Java is stagnating
        • Syntax
        • Complex language - generics example?
        • Technical limitations
        • Ugly API
        • JDK 7/8 is being delayed
        • We want power now!!!
    • Why Go Alternative?
        • Generics
        • Primitives
        • Arrays
        • Date API
        • I/O API
        • No closures
    • Why Go Alternative?
        • Cool frameworks and libraries
        • Embedded scripting
        • Less code
        • Simple code
    • Where To Go?
        • Dynamic Languages
          • JRuby
          • Jython
          • Groovy
          • Rhino (JavaScript)
        • Functional Languages
          • Clojure
          • Scala
    • Groovy
        • Easiest to learn
        • Direct invocation of Java methods
        • Compilable
        • Java only
        • Grails, Gradle, Gant, Griffon, GPars, ...
        • Markup builder example...   
    • JRuby
        • Different from Java
        • Intuitive syntax
        • Several implementations (Native, IronRuby, ...)
        • Compilable
        • Rails, Rake, Ruby Gems, ...
        • Active Record example
    • Scala
        • Functional and object-oriented
        • Concurrency
        • Academic
        • Java only
        • Lift
        • Prime numbers example ...
    • How it works?
        • Interpreted
          • JDK 6 JSR 223 (javax.script) (Example)
          • Apache Bean Scripting Framework (BSF)
          • Custom script runners
        • Compilation into bytecode
          • Best performance
    • What about existing code?
        • Calls to Java
        • Calls from Java
        • Class extensions (example)
        • Hybrid systems
    • JVM and Java Language
        • JVM and Java are not the same thing
        • Java used with no JVM (Android, GWT)
        • JVM used with no Java (JVM languages)
    • Summary
        • One language is not enough
        • No changes to infrastructure
        • Don't treat Java as a hammer
        • No need to drop Java
        • Simply try it !
    • Where to Start?
        • Try Groovy
        • Easiest Java integration
        • Compilation into bytecode
        • Lots of frameworks
    • Time for discussion
        • Tell us what do you think
    • References
      • http://jruby.org/
      • http://groovy.codehaus.org/
      • http://www.scala-lang.org/
      • http://jakarta.apache.org/bsf/
      • http://jcp.org/en/jsr/detail?id=223
    • Who am I?
      • Dmitry Buzdin
      •  
      • Agile software developer working with Java since 2005
      • Based in C.T.Co
      • Reach me at [email_address]