The Script Bowl Featuring Groovy, JRuby, Jython and Scala. Raghavan Rags N. Srinivas CTO, Technology Evangelism

Size: px
Start display at page:

Download "The Script Bowl Featuring Groovy, JRuby, Jython and Scala. Raghavan Rags N. Srinivas CTO, Technology Evangelism"

Transcription

1 The Script Bowl Featuring Groovy, JRuby, Jython and Scala Raghavan Rags N. Srinivas CTO, Technology Evangelism

2 The Script Bowl: Groovy Style Guillaume Laforge VP Technology at G2One, Inc. Groovy Project Manager

3 Guillaume Laforge Groovy Project Manager JSR-241 Spec Lead, standardizing the Groovy dynamic language in the JCP Initiator of the Grails web application framework Co-author of the Groovy in Action best-seller Manning VP Technology at G2One, Inc. Professional services around Groovy and Grails JavaOne SM Conference java.sun.com/javaone 3

4 Groovy is An Open Source dynamic language for the Virtual Machine for the Java platform (Java Virtual Machine or JVM machine) No impedence mismatch with Java programming environment Groovy uses a syntax much like Java programming language Shares the same object / threading / security model as Java programming language Uses the same APIs (regex, collections, strings ) Compiles down to normal Java programming language bytecode Provides native syntax constructs Lists, maps, regex, ranges Supports closures Simpler than any proposals for Java programming language! Groovy simplifies the use of many Java programming language APIs XML, Swing, JDBC API, unit testing & mocking, templating 2008 JavaOne SM Conference java.sun.com/javaone 4

5 The Script Bowl: JRuby Charles Nutter Technical Lead, JRuby

6 JRuby Co-Lead Charles Oliver Nutter Longtime developer of Java application environment (11+ yrs ) Engineer at Sun Microsystems for 1.5 yrs Full-time JRuby developer Also working on JVM implementation dynlang support Wide range of past experience > C, C++, C#, Python, Delphi, Lisp, Scheme > Java Platform, Enterprise Edition (Java EE platform) and Java Platform, Micro Edition (Java ME platform), Jini network technology, WS 6

7 JRuby Implementation of Ruby language in Java environment > Pure OO, Smalltalk-like, Perl/Python/Lisp-inspired > JRuby is just Ruby! Started in 2002, open source, many contributors > Tom Enebo, Ola Bini, Marcin Mielzinsky, Nick Sieger, Bill Dortch, Vladimir Sizikov, MenTaLguY Aiming for compatibility with current Ruby version > Ruby patchlevel 111 (114 was just released) Improvements on Ruby > Native threading, better performance, many libraries 7

8 JRuby 1.1 Major Features Full compiler for Ruby code to JVM interface bytecode Performance is many times better than C version New Regexp impl with encoding-agnostic features New rewritten IO subsystem to match Ruby/libc Reduced memory footprint Best compatibility level ever Ready for production use (and already being used) 8

9 The Script Bowl: Jython Frank Wierzbicki Technical Lead, Jython

10 Jython Jython brings the Python language to the JVM. Python is a very mature language which was designed to be easy to pick up but powerful to use. Jython has full and nearly seamless integration into any Java library and code. Jython can access many of the libraries and frameworks written in Python. Frank Wierzbicki has been a user of Jython since 1999, a committer since 2004, and the lead of Jython since He now works on Jython full time for Sun Microsystems JavaOne SM Conference java.sun.com/javaone 10

11 The Script Bowl: Scala Jorge Ortiz Community Member, Scala

12 Scala should not really be here It s not a scripting language in the usual sense. It s a full blown programming language, which is statically typed functional and object-oriented It also interoperates seamlessly with Java programming environment and has similar performance characteristics. Scala means scalable language Easy to build component abstractions Easy to embed domain-specific languages It looks a bit like a scripting language, because of type inference flexible syntax modern control abstractions 2008 JavaOne SM Conference java.sun.com/javaone 12

13 Why Scala? Modern, advanced type system, closures and pattern matching, traits and mixin composition Native XML support Abstractions for concurrency (actors, etc.) lift web framework Comparable LoC to Ruby on Rails app About half the LoC for testing Comet-style web apps with actors LAMP group at EPFL, Switzerland, led by Martin Odersky Current javac, Java environment generics, ACM Fellow Jorge Ortiz is a lift committer, blogs about Scala, and teaches Cross-paradigm programming with Scala at Stanford Scala lift off Saturday, May 10 ( JavaOne SM Conference java.sun.com/javaone 13

14 The Script Bowl: Judges Roberto Chinnici, Scriptologist Carol McDonald Ola Bini

15 The Script Bowl: Rounds Round 1: Text file processing Round 2: HTML Processing OR Text Generation OR JVM Machine Integration OR Web Framework Round 3: Open (free format round)

JRuby: What, Why, How...Do it Now!

JRuby: What, Why, How...Do it Now! JRuby: What, Why, How...Do it Now! Thomas E Enebo, JRuby Core Developer Charles Oliver Nutter, JRuby Core Developer TS-5416 Learn how awesome JRuby is Learn how much nicer Java technologybased APIs can

More information

JRuby. A Ruby VM in Java jruby.sourceforge.net Charles Oliver Nutter, presenting

JRuby. A Ruby VM in Java jruby.sourceforge.net Charles Oliver Nutter, presenting JRuby A Ruby VM in Java jruby.sourceforge.net Charles Oliver Nutter, presenting Who Am I? Charles Oliver Nutter: headius@headius.com Senior Architect/Technologist at Ventera Corp (gov t, financial, telecom

More information

Groovy and Grails in Google App Engine

Groovy and Grails in Google App Engine Groovy and Grails in Google App Engine Benefit from a Java-like dynamic language to be more productive on App Engine Guillaume Laforge Head of Groovy Development Guillaume Laforge Groovy Project Manager

More information

Scala, Your Next Programming Language

Scala, Your Next Programming Language Scala, Your Next Programming Language (or if it is good enough for Twitter, it is good enough for me) WORLDCOMP 2011 By Dr. Mark C. Lewis Trinity University Disclaimer I am writing a Scala textbook that

More information

CS5015 Object-oriented Software Development. Lecture: Overview of Java Platform. A. O Riordan, 2010 Most recent revision, 2014 updated for Java 8

CS5015 Object-oriented Software Development. Lecture: Overview of Java Platform. A. O Riordan, 2010 Most recent revision, 2014 updated for Java 8 CS5015 Object-oriented Software Development Lecture: Overview of Java Platform A. O Riordan, 2010 Most recent revision, 2014 updated for Java 8 Java Programming Language Java is an object-oriented programming

More information

Oracle Mix. A Case Study. Ola Bini JRuby Core Developer ThoughtWorks Studios.

Oracle Mix. A Case Study. Ola Bini JRuby Core Developer ThoughtWorks Studios. Oracle Mix A Case Study Ola Bini JRuby Core Developer ThoughtWorks Studios ola.bini@gmail.com http://olabini.com/blog Vanity slide Vanity slide Ola Bini Vanity slide Ola Bini From Stockholm, Sweden Vanity

More information

Who am I? Harlan Iverson. Programming enthusiast. Seeker of truth. Imperfect. I'll be wrong about some things. Please correct me if you can.

Who am I? Harlan Iverson. Programming enthusiast. Seeker of truth. Imperfect. I'll be wrong about some things. Please correct me if you can. Who am I? Harlan Iverson. Programming enthusiast. Seeker of truth. Imperfect. I'll be wrong about some things. Please correct me if you can. P.S... I hate boring presentations. Please, engage and stay

More information

JRuby: Bringing Ruby to the JVM

JRuby: Bringing Ruby to the JVM JRuby: Bringing Ruby to the JVM Thomas E. Enebo Aandtech Inc. Charles Oliver Nutter Ventera Corp http://www.jruby.org TS-3059 2006 JavaOne SM Conference Session TS-3059 JRuby Presentation Goal Learn what

More information

First Programming Language in CS Education The Arguments for Scala

First Programming Language in CS Education The Arguments for Scala First Programming Language in CS Education The Arguments for Scala WORLDCOMP 2011 By Dr. Mark C. Lewis Trinity University Disclaimer I am writing a Scala textbook that is under contract with CRC Press.

More information

Java One 2007 Conference Notes Juixe

Java One 2007 Conference Notes Juixe Java One 2007 Conference Notes By Juixe Monday, May 7... 4 Welcome to CommunityOne 2007... 4 Getting Started and What's New in GlassFish v2... 5 Lunch with the Java Posse... 5 Ajax Applications Made Easy

More information

Using Scala for building DSL s

Using Scala for building DSL s Using Scala for building DSL s Abhijit Sharma Innovation Lab, BMC Software 1 What is a DSL? Domain Specific Language Appropriate abstraction level for domain - uses precise concepts and semantics of domain

More information

JRuby: Who What Now. Thomas Enebo JRuby Guy Sun Microsystems

JRuby: Who What Now. Thomas Enebo JRuby Guy Sun Microsystems JRuby: Who What Now Thomas Enebo JRuby Guy Sun Microsystems 1 Who am I? エネボ. トーマス Co-lead of JRuby project Longtime Java developer (12+ years) Ruby developer (6 years) Engineer at Sun Microsystems for

More information

Unifying functional and object-oriented programming with Scala 齐琦, 海南大学计算机发展前沿系列课程

Unifying functional and object-oriented programming with Scala 齐琦, 海南大学计算机发展前沿系列课程 Unifying functional and object-oriented programming with Scala, 海南大学计算机发展前沿系列课程 2 原文引用 Odersky, M. and T. Rompf (2014). "Unifying functional and objectoriented programming with Scala." Communications of

More information

<Insert Picture Here> JavaFX 2.0

<Insert Picture Here> JavaFX 2.0 1 JavaFX 2.0 Dr. Stefan Schneider Chief Technologist ISV Engineering The following is intended to outline our general product direction. It is intended for information purposes only,

More information

Groovy = Java Technology + Ruby + Python for the JVM

Groovy = Java Technology + Ruby + Python for the JVM Groovy = Java Technology + Ruby + Python for the JVM Rod Cope CTO OpenLogic, Inc. http://www.openlogic.com TS-3273 2006 JavaOne SM Conference Session TS-3273 Groovy Goal What You ll Get Out of This Session

More information

Dynamic Languages Strike Back. Steve Yegge Stanford EE Dept Computer Systems Colloquium May 7, 2008

Dynamic Languages Strike Back. Steve Yegge Stanford EE Dept Computer Systems Colloquium May 7, 2008 Dynamic Languages Strike Back Steve Yegge Stanford EE Dept Computer Systems Colloquium May 7, 2008 What is this talk about? Popular opinion of dynamic languages: Unfixably slow Not possible to create IDE-quality

More information

From Scala to Typesafe. Martin Odersky November 4 th 2011 Venture Ideas Symposium

From Scala to Typesafe. Martin Odersky November 4 th 2011 Venture Ideas Symposium From Scala to Typesafe Martin Odersky November 4 th 2011 Venture Ideas Symposium Context The world of mainstream business application software is changing: Moore s law now achieved by increasing # of cores

More information

Making The Future Java

Making The Future Java Making The Future Java Dalibor Topić (@robilad) Principal Product Manager October 18th, 2013 - HrOUG, Rovinj 1 The following is intended to outline our general product direction. It is intended for information

More information

Simplify Enterprise Development With Scripting

Simplify Enterprise Development With Scripting Simplify Enterprise Development With Scripting Guillaume Laforge Software Architect OCTO Technology http://www.octo.com Tim Gleason/Tugdual Grall OracleAS Development Oracle Corporation http://www.oracle.com

More information

Domain-Specific Languages Language Workbenches

Domain-Specific Languages Language Workbenches Software Engineering with and Domain-Specific Languages Language Workbenches Peter Friese Itemis peter.friese@itemis.de Markus Voelter Independent/itemis voelter@acm.org 1 Programming Languages C# Erlang

More information

Jussi Riihelä / Jussi Riihelä

Jussi Riihelä / Jussi Riihelä 28.4.2006 Jussi Riihelä jussi.riihela@nokia.com 1 2006-04-28 / Jussi Riihelä Content Basic facts and motivation Groovy features IDE support and runtime dependencies Criticism 2 2006-04-28 / Jussi Riihelä

More information

JRuby and Ioke. On Google AppEngine. Ola Bini

JRuby and Ioke. On Google AppEngine. Ola Bini JRuby and Ioke On Google AppEngine Ola Bini ola.bini@gmail.com http://olabini.com/blog Vanity slide ThoughtWorks consultant/developer/programming language geek JRuby Core Developer From Stockholm, Sweden

More information

comparing groovy & jruby *

comparing groovy & jruby * ThoughtWorks comparing groovy & jruby * * please check all knives, guns, pitchforks, and torches at the door NEAL FORD software architect / meme wrangler ThoughtWorks nford@thoughtworks.com 3003 Summit

More information

Project Horizon Technical Overview. Steven Forman Principal Technical Consultant

Project Horizon Technical Overview. Steven Forman Principal Technical Consultant Project Horizon Technical Overview Steven Forman Principal Technical Consultant Agenda Banner Evolution Overview Project Horizon Overview Project Horizon Architecture Review Preparing for Project Horizon

More information

Project Horizon Technical Overview. Bob Rullo GM; Presentation Architecture

Project Horizon Technical Overview. Bob Rullo GM; Presentation Architecture Project Horizon Technical Overview Bob Rullo GM; Presentation Architecture robert.rullo@sungardhe.com Agenda Banner Evolution Overview Project Horizon Overview Project Horizon Architecture Review Preparing

More information

Bytecode Manipulation Techniques for Dynamic Applications for the Java Virtual Machine

Bytecode Manipulation Techniques for Dynamic Applications for the Java Virtual Machine Bytecode Manipulation Techniques for Dynamic Applications for the Java Virtual Machine Eugene Kuleshov, Terracotta Tim Eck, Terracotta Tom Ware, Oracle Corporation Charles Nutter, Sun Microsystems, Inc.

More information

Scala Java Sparkle Monday, April 16, 2012

Scala Java Sparkle Monday, April 16, 2012 Scala Java Sparkle Scala Scala Java Scala "Which Programming Language would you use *now* on top of JVM, except Java?". The answer was surprisingly fast and very clear: - Scala. http://www.adam-bien.com/roller/abien/entry/java_net_javaone_which_programming

More information

TOWARDS A UNIVERSAL VIRTUAL MACHINE

TOWARDS A UNIVERSAL VIRTUAL MACHINE TOWARDS A UNIVERSAL VIRTUAL MACHINE Alex Buckley Specification Lead, Java Language and VM Sun Microsystems John Rose Lead Engineer, Multi-Language Virtual Machine Sun Microsystems 1 Overview The Java Virtual

More information

Open ESB v2, Open ESB.next and Project Fuji. Andreas Egloff Lead Architect SOA / Business Integration Sun Microsystems

Open ESB v2, Open ESB.next and Project Fuji. Andreas Egloff Lead Architect SOA / Business Integration Sun Microsystems Open ESB v2, Open ESB.next and Project Fuji Andreas Egloff Lead Architect SOA / Business Integration Sun Microsystems 1 Introduction 2 Project Open ESB Over 600 members and 600,000 downloads CDDL license

More information

Evolving the Java platform. Ola Bini JRuby Core Developer ThoughtWorks Studios

Evolving the Java platform. Ola Bini JRuby Core Developer ThoughtWorks Studios Evolving the Java platform Ola Bini JRuby Core Developer ThoughtWorks Studios About me Ola Bini From Stockholm, Sweden JRuby Core Developer ThoughtWorks Studios Member of the JSR292 expert group Programming

More information

Programming in Scala Second Edition

Programming in Scala Second Edition Programming in Scala Second Edition Martin Odersky, Lex Spoon, Bill Venners artima ARTIMA PRESS WALNUT CREEK, CALIFORNIA Contents Contents List of Figures List of Tables List of Listings Foreword Foreword

More information

Rails powered by GlassFish & jmaki

Rails powered by GlassFish & jmaki Rails powered by GlassFish & jmaki Arun Gupta Sun Microsystems http://blogs.sun.com/arungupta Presented by: Craig R. McClanahan Rails Conf 2008 1 Who is Arun? GlassFish Guy Technology Evangelist for Web

More information

Performance Per Watt. Native code invited back from exile with the Return of the King:

Performance Per Watt. Native code invited back from exile with the Return of the King: 2009-1979-1989 Research: C with Classes, ARM C++ 1989-1999 Mainstream C++ goes to town (& ISO, & space, &c) 1999-2009 Coffee-based languages for productivity Q: Can they do everything important? Native

More information

Anders Møller Michael Schwartzbach Erik Ernst Hans Hüttel

Anders Møller Michael Schwartzbach Erik Ernst Hans Hüttel Programming Paradigms 2010 Anders Møller Michael Schwartzbach Erik Ernst Hans Hüttel Aims This purpose of the course is to introduce the student to programming g languages g that support a variety of programming

More information

FILE - JAVA WEB SERVICES HEAD FIRST

FILE - JAVA WEB SERVICES HEAD FIRST 04 November, 2017 FILE - JAVA WEB SERVICES HEAD FIRST Document Filetype: PDF 192.6 KB 0 FILE - JAVA WEB SERVICES HEAD FIRST RESTful Web Services Quick Guide. Just finished reading HEAD FIRST JAVA, whats

More information

Java FX 2.0. Dr. Stefan Schneider Oracle Deutschland Walldorf-Baden

Java FX 2.0. Dr. Stefan Schneider Oracle Deutschland Walldorf-Baden Java FX 2.0 Dr. Stefan Schneider Oracle Deutschland Walldorf-Baden Keywords: JavaFX, Rich, GUI, Road map. Introduction This presentation gives an introduction into JavaFX. It introduces the key features

More information

Scala : an LLVM-targeted Scala compiler

Scala : an LLVM-targeted Scala compiler Scala : an LLVM-targeted Scala compiler Da Liu, UNI: dl2997 Contents 1 Background 1 2 Introduction 1 3 Project Design 1 4 Language Prototype Features 2 4.1 Language Features........................................

More information

Java and C II. CSE 351 Spring Instructor: Ruth Anderson

Java and C II. CSE 351 Spring Instructor: Ruth Anderson Java and C II CSE 351 Spring 2017 Instructor: Ruth Anderson Teaching Assistants: Dylan Johnson Kevin Bi Linxing Preston Jiang Cody Ohlsen Yufang Sun Joshua Curtis Administrivia Lab 5 Due TONIGHT! Fri 6/2

More information

Improve and Expand JavaServer Faces Technology with JBoss Seam

Improve and Expand JavaServer Faces Technology with JBoss Seam Improve and Expand JavaServer Faces Technology with JBoss Seam Michael Yuan Kito D. Mann Product Manager, Red Hat Author, JSF in Action http://www.michaelyuan.com/seam/ Principal Consultant Virtua, Inc.

More information

Scala, Lift and the Real Time Web

Scala, Lift and the Real Time Web Scala, Lift and the Real Time Web David Pollak Benevolent Dictator for Life Lift Web Framework dpp@liftweb.net All about me (David Pollak) Sometimes strict, mostly lazy Lead developer for Lift Web Framework

More information

Web Frameworks MMIS 2 VU SS Denis Helic. March 10, KMI, TU Graz. Denis Helic (KMI, TU Graz) Web Frameworks March 10, / 18

Web Frameworks MMIS 2 VU SS Denis Helic. March 10, KMI, TU Graz. Denis Helic (KMI, TU Graz) Web Frameworks March 10, / 18 Web Frameworks MMIS 2 VU SS 2011-707.025 Denis Helic KMI, TU Graz March 10, 2011 Denis Helic (KMI, TU Graz) Web Frameworks March 10, 2011 1 / 18 Web Application Frameworks MVC Frameworks for Web applications

More information

Creating Manageable Systems With JMX, Spring, AOP, and Groovy

Creating Manageable Systems With JMX, Spring, AOP, and Groovy Creating Manageable Systems With JMX, Spring, AOP, and Groovy Vladimir Vivien Sr. Software Engineer Simplius, LLC http://simpli.us/ TS-1106 2007 JavaOne SM Conference Session TS-1106 Goal Build runtime

More information

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP

JAVA COURSES. Empowering Innovation. DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP 2013 Empowering Innovation DN InfoTech Pvt. Ltd. H-151, Sector 63, Noida, UP contact@dninfotech.com www.dninfotech.com 1 JAVA 500: Core JAVA Java Programming Overview Applications Compiler Class Libraries

More information

Notes from a Short Introductory Lecture on Scala (Based on Programming in Scala, 2nd Ed.)

Notes from a Short Introductory Lecture on Scala (Based on Programming in Scala, 2nd Ed.) Notes from a Short Introductory Lecture on Scala (Based on Programming in Scala, 2nd Ed.) David Haraburda January 30, 2013 1 Introduction Scala is a multi-paradigm language that runs on the JVM (is totally

More information

DOWNLOAD OR READ : JAVA THREADS PDF EBOOK EPUB MOBI

DOWNLOAD OR READ : JAVA THREADS PDF EBOOK EPUB MOBI DOWNLOAD OR READ : JAVA THREADS PDF EBOOK EPUB MOBI Page 1 Page 2 java threads java threads pdf java threads Section 2. Thread basics What are threads? Nearly every operating system supports the concept

More information

PyPy - How to not write Virtual Machines for Dynamic Languages

PyPy - How to not write Virtual Machines for Dynamic Languages PyPy - How to not write Virtual Machines for Dynamic Languages Institut für Informatik Heinrich-Heine-Universität Düsseldorf ESUG 2007 Scope This talk is about: implementing dynamic languages (with a focus

More information

invokedynamic IN 45 MINUTES!!! Wednesday, February 6, 13

invokedynamic IN 45 MINUTES!!! Wednesday, February 6, 13 invokedynamic IN 45 MINUTES!!! Me Charles Oliver Nutter headius@headius.com, @headius blog.headius.com JRuby Guy at Sun, Engine Yard, Red Hat JVM enthusiast, educator, contributor Earliest adopter of invokedynamic

More information

JavaOne Topics. Keynotes Talks overview Interoperability, jini Real-time and Embedded XML and Java Cool Recommendations

JavaOne Topics. Keynotes Talks overview Interoperability, jini Real-time and Embedded XML and Java Cool Recommendations JavaOne 2000 Topics Keynotes Talks overview Interoperability, jini Real-time and Embedded XML and Java Cool Recommendations First Keynote (McNeally( McNeally,, Jobs) 9 Gbits/s cross the Atlantic (m:m)

More information

Scripting for the Java Platform. Christopher M. Judd. Judd Solutions, LLC. President/Consultant

Scripting for the Java Platform. Christopher M. Judd. Judd Solutions, LLC. President/Consultant Scripting for the Java Platform Christopher M. Judd President/Consultant Judd Solutions, LLC Christopher M. Judd President/Consultant of Judd Solutions Central Ohio Java User Group (COJUG) coordinator

More information

Functional Programming and the Web

Functional Programming and the Web June 13, 2011 About Me Undergraduate: University of Illinois at Champaign-Urbana PhD: Penn State University Retrofitting Programs for Complete Security Mediation Static analysis, type-based compiler Racker:

More information

Outline. Introduction to Java. What Is Java? History. Java 2 Platform. Java 2 Platform Standard Edition. Introduction Java 2 Platform

Outline. Introduction to Java. What Is Java? History. Java 2 Platform. Java 2 Platform Standard Edition. Introduction Java 2 Platform Outline Introduction to Java Introduction Java 2 Platform CS 3300 Object-Oriented Concepts Introduction to Java 2 What Is Java? History Characteristics of Java History James Gosling at Sun Microsystems

More information

Groovy For Java Programmers

Groovy For Java Programmers Groovy For Java Programmers QCONSF 2010 Jeff Brown Core Grails Developer jeff.brown@springsource.com SpringSource - A Division Of VMware http://springsource.com/ Copyright 2010 SpringSource. Copying, publishing

More information

introduction to jruby

introduction to jruby ThoughtWorks introduction to jruby NEAL FORD software architect / meme wrangler ThoughtWorks nford@thoughtworks.com 3003 Summit Boulevard, Atlanta, GA 30319 www.nealford.com www.thoughtworks.com memeagora.blogspot.com

More information

invokedynamic under the hood

invokedynamic under the hood Nadeesh T V ORACLE India Pvt Ltd 26 Aug 2016 Outline 1 JVM Languages 2 PreInvokedynamic 3 Invokedynamic 4 MethodHandle 5 Summary JVM Languages Languages which can run on Java Virtual Machine (JVM) Should

More information

Optimizing LAMP Development with PHP5

Optimizing LAMP Development with PHP5 Optimizing LAMP Development with PHP5 Wednesday, November 9, 2005 Jamil Hassan Spain NCSSM Database Administrator March 12, 2005 Presentation Agenda Simple Upgrade Method to PHP5 Enterprise LAMP Development

More information

Java SE State Of The Union

Java SE State Of The Union Java SE State Of The Union Gil Tene, CTO & co-founder, Azul Systems @giltene Agenda Brief introduction Some history Some more history & future speak Some obligatory What s in Java 9? stuff Let s chat About

More information

Using JavaScript on Client and Server with Project Phobos

Using JavaScript on Client and Server with Project Phobos Using JavaScript on Client and Server with Project Phobos Roberto Chinnici Senior Staff Engineer Sun Microsystems, Inc. http://phobos.dev.java.net July 27, 2007 JavaScript in the browser 2 JavaScript 1.x

More information

Closing the Case for Groovy (and Ruby, and Python)

Closing the Case for Groovy (and Ruby, and Python) Closing the Case for Groovy (and Ruby, and Python) Dr Russel Winder Concertant LLP russel.winder@concertant.com 2007 Russel Winder 1 Aims and Objectives Convince people that dynamic typing is not a difficulty,

More information

Programming Kotlin. Extracted from: Creating Elegant, Expressive, and Performant JVM and Android Applications. The Pragmatic Bookshelf

Programming Kotlin. Extracted from: Creating Elegant, Expressive, and Performant JVM and Android Applications. The Pragmatic Bookshelf Extracted from: Programming Kotlin Creating Elegant, Expressive, and Performant JVM and Android Applications This PDF file contains pages extracted from Programming Kotlin, published by the Pragmatic Bookshelf.

More information

A Whirlwind Tour of Scala. Kevin Kilroy October 2014

A Whirlwind Tour of Scala. Kevin Kilroy October 2014 A Whirlwind Tour of Scala Kevin Kilroy October 2014 A Brief History of Scala... Created in 2001 by javac author 1995 created Pizza with 1998 created GJ with 1999 Joined EPFL Created Funnel 2001 Scala 2003

More information

Overview. Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++ Performance, memory

Overview. Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++ Performance, memory SCRIPTING Overview Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++ Reflection Bindings Serialization Performance, memory Rationale C++ isn't the best choice

More information

Groovy & Grails Scripting for Modern Web Applications. Rohit Nayak Talentica Software

Groovy & Grails Scripting for Modern Web Applications. Rohit Nayak Talentica Software Groovy & Grails Scripting for Modern Web Applications Rohit Nayak Talentica Software Agenda Demo: Quick intro to Grails Scripting, Web Applications and Grails/Groovy REST service in Grails Demo Internals

More information

Monkeybars Tools-enabled Swing development with JRuby

Monkeybars Tools-enabled Swing development with JRuby Monkeybars Tools-enabled Swing development with JRuby David Koontz david@koontzfamily.org JRuby fanboy, teacher, hockey player This is a talk about Java 2 This is a talk about Java This is a talk about

More information

Jython Python for the Java Platform. Jim Baker, Committer twitter.com/jimbaker zyasoft.com/pythoneering

Jython Python for the Java Platform. Jim Baker, Committer twitter.com/jimbaker zyasoft.com/pythoneering Jython Python for the Java Platform Jim Baker, Committer jbaker@zyasoft.com twitter.com/jimbaker zyasoft.com/pythoneering Jython Milestones 9 years ago - Released JPython 1.1 8 years ago - Released 2.0

More information

Java: framework overview and in-the-small features

Java: framework overview and in-the-small features Chair of Software Engineering Carlo A. Furia, Marco Piccioni, Bertrand Meyer Java: framework overview and in-the-small features Chair of Software Engineering Carlo A. Furia, Marco Piccioni, Bertrand Meyer

More information

A Folding Language. Ola Bini computational metalinguist fredag, 2009 september 18

A Folding Language. Ola Bini computational metalinguist   fredag, 2009 september 18 A Folding Language Ola Bini computational metalinguist ola.bini@gmail.com http://olabini.com/blog Your host From Sweden Language geek at ThoughtWorks Experience with C/C++, C#, Java, Ruby, Lisp and many

More information

Advanced Object-Oriented Programming Introduction to OOP and Java

Advanced Object-Oriented Programming Introduction to OOP and Java Advanced Object-Oriented Programming Introduction to OOP and Java Dr. Kulwadee Somboonviwat International College, KMITL kskulwad@kmitl.ac.th Course Objectives Solidify object-oriented programming skills

More information

Learn to Code with C#

Learn to Code with C# Learn to Code with C# Getting Started with Microsoft's Cross-Platform, Open Source Language Who am I? Jeff Ammons Microsoft MVP Pluralsight Author CEO/Chief Instructor at Code Career Academy 25 Years Professional

More information

CHAPTER 1. Introduction to JAVA Programming

CHAPTER 1. Introduction to JAVA Programming CHAPTER 1 Introduction to JAVA Programming What java is Java is high level You can use java to write computer applications that computes number,process words,play games,store data, etc. History of Java.

More information

Extending Java TM TM And Developing DSLs With JetBrains MPS Open- Source Language Workbench

Extending Java TM TM And Developing DSLs With JetBrains MPS Open- Source Language Workbench Extending Java TM TM And Developing DSLs With JetBrains MPS Open- Source Language Workbench Konstantin Solomatov JetBrains Lead Developer for JetBrains MPS Project 1 Agenda > Extending languages. Why bother?

More information

Radical Simplification through Polyglot and Poly-paradigm Programming. Dean Wampler Object Mentor, Inc.

Radical Simplification through Polyglot and Poly-paradigm Programming. Dean Wampler Object Mentor, Inc. Radical Simplification through Polyglot and Poly-paradigm Programming Dean Wampler dean@objectmentor.com Object Mentor, Inc. Polyglot: many languages Poly-paradigm: many modularity paradigms Today s applications:

More information

Scripting Languages in OSGi. Thursday, November 8, 12

Scripting Languages in OSGi. Thursday, November 8, 12 Scripting Languages in OSGi Frank Lyaruu CTO Dexels Project lead Navajo Framework Amsterdam www.dexels.com Twitter: @lyaruu Navajo Framework TSL XML based script language Compiled to Java Recently ported

More information

Composable Web Services Using Interoperable Technologies From Sun s Project Tango

Composable Web Services Using Interoperable Technologies From Sun s Project Tango Composable Web Services Using Interoperable Technologies From Sun s Project Tango Nicholas Kassem Technology Director Harold Carr Lead Architect TS-4661 Copyright 2006, Sun Microsystems, Inc., All rights

More information

<Insert Picture Here> Java Virtual Developer Day

<Insert Picture Here> Java Virtual Developer Day 1 Java Virtual Developer Day Simon Ritter Technology Evangelist Virtual Developer Day: Agenda Keynote: The Java Platform: Now and the Future What is Java SE 7 and JDK 7 Diving into

More information

Designing for Scalability. Patrick Linskey EJB Team Lead BEA Systems

Designing for Scalability. Patrick Linskey EJB Team Lead BEA Systems Designing for Scalability Patrick Linskey EJB Team Lead BEA Systems plinskey@bea.com 1 Patrick Linskey EJB Team Lead at BEA OpenJPA Committer JPA 1, 2 EG Member 2 Agenda Define and discuss scalability

More information

Java EE 6 Web Profile Leader 2011 Roadmap

Java EE 6 Web Profile Leader 2011 Roadmap Java EE 6 Web Profile Leader 2011 Roadmap CAUCHO TECHNOLOGY Caucho s relentless quest for performance and reliability paved the way for Resin to be a leading global Open Source Java application server

More information

Discovering Computers Chapter 13 Programming Languages and Program Development

Discovering Computers Chapter 13 Programming Languages and Program Development Discovering Computers 2009 Chapter 13 Programming Languages and Program Development Chapter 13 Objectives Differentiate between machine and assembly languages Identify and discuss the purpose of procedural

More information

Scriptable Markdown pretty-printing with GraalVM

Scriptable Markdown pretty-printing with GraalVM Scriptable Markdown pretty-printing with GraalVM Pascal Maissen pascal.maissen@unifr.ch 20.11.2018 Seminar Software Composition, University of Bern Motivation Implement a pretty printer for markdown in

More information

Introduction to Java. Lecture 1 COP 3252 Summer May 16, 2017

Introduction to Java. Lecture 1 COP 3252 Summer May 16, 2017 Introduction to Java Lecture 1 COP 3252 Summer 2017 May 16, 2017 The Java Language Java is a programming language that evolved from C++ Both are object-oriented They both have much of the same syntax Began

More information

...something useful to do with the JVM.

...something useful to do with the JVM. Scala Finally... ...something useful to do with the JVM. Image source: http://www.tripadvisor.com/locationphotos-g187789-lazio.html Young Developed in 2003 by Martin Odersky at EPFL Martin also brought

More information

If you don't know how to code, then you can learn even if you think you can't. Thousands of people have learned programming from these fine books:

If you don't know how to code, then you can learn even if you think you can't. Thousands of people have learned programming from these fine books: Become a Programmer, Motherfucker If you don't know how to code, then you can learn even if you think you can't. Thousands of people have learned programming from these fine books: Learn Python The Hard

More information

CMPSC 311- Introduction to Systems Programming Module: Systems Programming

CMPSC 311- Introduction to Systems Programming Module: Systems Programming CMPSC 311- Introduction to Systems Programming Module: Systems Programming Professor Patrick McDaniel Fall 2015 WARNING Warning: for those not in the class, there is an unusually large number of people

More information

CSE 341: Programming Languages

CSE 341: Programming Languages CSE 341: Programming Languages Hal Perkins Spring 2011 Lecture 19 Introduction to Ruby Hal Perkins CSE341 Spring 2011, Lecture 19 1 Today Why Ruby? Some basics of Ruby programs Syntax Classes, Methods

More information

1. Introduction. Java. Fall 2009 Instructor: Dr. Masoud Yaghini

1. Introduction. Java. Fall 2009 Instructor: Dr. Masoud Yaghini 1. Introduction Java Fall 2009 Instructor: Dr. Masoud Yaghini Outline Introduction Introduction The Java Programming Language The Java Platform References Java technology Java is A high-level programming

More information

Company introduction

Company introduction Company introduction Greetings Tau Technologies is pleased to introduce its products and services to you. The integrated solution RhoMobile for the development of cross-platform mobile applications has

More information

Tutorial Point Servlets Pdf

Tutorial Point Servlets Pdf Tutorial Servlets Pdf Free PDF ebook Download: Tutorial Servlets Pdf Download or Read Online ebook tutorial point servlets pdf in PDF Format From The Best User Guide Database on JSP, servlets, Struts,

More information

IBM s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM s sole discretion.

IBM s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM s sole discretion. Please note Copyright 2018 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM IBM s statements

More information

Learning objectives. The Java Environment. Java timeline (cont d) Java timeline. Understand the basic features of Java

Learning objectives. The Java Environment. Java timeline (cont d) Java timeline. Understand the basic features of Java Learning objectives The Java Environment Understand the basic features of Java What are portability and robustness? Understand the concepts of bytecode and interpreter What is the JVM? Learn few coding

More information

Development of web applications using Google Technology

Development of web applications using Google Technology International Journal of Computer Engineering and Applications, ICCSTAR-2016, Special Issue, May.16 Development of web applications using Google Technology Vaibhavi Nayak 1, Vinuta V Naik 2,Vijaykumar

More information

Unit Testing J2EE from JRuby. Evan Light

Unit Testing J2EE from JRuby. Evan Light Unit Testing J2EE from JRuby Evan Light http://evan.tiggerpalace.com Who I am Professional developer since 1996 Java since 1999 J2EE since 2000 Ruby since 2006 Some yutz with Keynote and a remote control

More information

Harnessing Java with Scala

Harnessing Java with Scala Harnessing Java with Scala OSCON 2010 July 21, 2010 Thomas Lockney @tlockney or thomas@lockney.net Trenton Lipscomb trentonl@amazon.com Introduction Understand the capabilities of sbt and Scala Demonstrate

More information

Java Platform, Enterprise Edition 6 with Extensible GlassFish Application Server v3

Java Platform, Enterprise Edition 6 with Extensible GlassFish Application Server v3 Java Platform, Enterprise Edition 6 with Extensible GlassFish Application Server v3 Jerome Dochez Mahesh Kannan Sun Microsystems, Inc. Agenda > Java EE 6 and GlassFish V3 > Modularity, Runtime > Service

More information

JVM Survival Guide. Hadi Hariri

JVM Survival Guide. Hadi Hariri JVM Survival Guide Hadi Hariri This talk For What For Who 20 years of Java The Sun and The Oracle Java The Language Java The Virtual Machine Java The Ecosystem The Community Community Driven Not Vendor-Driven

More information

Rhino & RingoJS: JavaScript on the JVM

Rhino & RingoJS: JavaScript on the JVM Rhino & RingoJS: JavaScript on the JVM Hannes Wallnöfer http://hns.github.com @hannesw "Overall, JavaScript as a system programming language feels a lot like Lisp must have for the programming generation

More information

Advanced Programming Introduction

Advanced Programming Introduction Advanced Programming Introduction Course Description The Goal The Motivation Lectures and Assignments Programming Platform Resources Evaluation Lab: problems, projects, essays easy Exam: written test hard

More information

Matrex Table of Contents

Matrex Table of Contents Matrex Table of Contents Matrex...1 What is the equivalent of a spreadsheet in Matrex?...2 Why I should use Matrex instead of a spreadsheet application?...3 Concepts...4 System architecture in the future

More information

Look at all these toys!

Look at all these toys! Look at all these toys! Help it s Ruby! All alone Is Ruby dying? Where do Rubyists go? Where do Rubyists go? Tobias Pfeiffer @PragTob pragtob.info 673 Responses First Rails Release Rails 1.0 Why did

More information

Richard Mallion. Swift for Admins #TEAMSWIFT

Richard Mallion. Swift for Admins #TEAMSWIFT Richard Mallion Swift for Admins #TEAMSWIFT Apple Introduces Swift At the WWDC 2014 Keynote, Apple introduced Swift A new modern programming language It targets the frameworks for Cocoa and Cocoa Touch

More information

AN ISO 9001:2008 CERTIFIED COMPANY ADVANCED. Java TRAINING.

AN ISO 9001:2008 CERTIFIED COMPANY ADVANCED. Java TRAINING. AN ISO 9001:2008 CERTIFIED COMPANY ADVANCED Java TRAINING www.webliquids.com ABOUT US Who we are: WebLiquids is an ISO (9001:2008), Google, Microsoft Certified Advanced Web Educational Training Organisation.

More information

Smalltalk: developed at Xerox Palo Alto Research Center by the Learning Research Group in the 1970 s (Smalltalk-72, Smalltalk-76, Smalltalk-80)

Smalltalk: developed at Xerox Palo Alto Research Center by the Learning Research Group in the 1970 s (Smalltalk-72, Smalltalk-76, Smalltalk-80) A Bit of History Some notable examples of early object-oriented languages and systems: Sketchpad (Ivan Sutherland s 1963 PhD dissertation) was the first system to use classes and instances (although Sketchpad

More information