• Liked Stephan Herrmann
    keyboard_arrow_down

    Runtime Specialization - Java has never been so dynamic before

    Stephan Herrmann
    Stephan Herrmann
    schedule 9 months ago
    Sold Out!
    45 mins
    Talk
    Advanced

    Much of software development is about creating variants of things that have been done in similar ways before. Typical means to create such variants include inheritance / subtyping, extension points and dependency injection. Unfortunately, all of these approaches require that the original author anticipated the required variation points in his/her module, to enable you to create whatever variant comes to your mind. This means, modules intended for reuse tend to be bloated with indirections just in case someone needs to modify something, and still many interesting adaptations are simply not possible due to lack of pre-planning.

    Object Teams reverses this situation. Creating unanticipated variants is at the core of this approach. Starting with the Neon release, even a running application can be morphed into a new variant of itself.

  • Liked Nadeesh TV
    keyboard_arrow_down

    Invokedynamic under the hood

    Nadeesh TV
    Nadeesh TV
    schedule 11 months ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    To exploit the cross platform nature and powerfulness of the  JVM, most of the nonJava programming languages (python, ruby, clojure etc) had ported themselves to run on JVM. But performance of these nonJava languages were poor compared to their nonJVM version. Java 7 introduced a new byte code instruction invokedynamic (indy) to support dynamic languages running on the JVM. The invokedynamic instruction simplifies and potentially improves implementations of compilers and runtime systems for dynamic languages on the JVM.  Later in Java 8, indy became the backbone of the Java 8's most popular feature lambda expression.

     

     

     

  • Liked G Bhanu Prakash
    keyboard_arrow_down

    JDK-9 - Modules and Java Linker (JLink)

    G Bhanu Prakash
    G Bhanu Prakash
    schedule 11 months ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    Java 9 is going to provide several developer tools which complement the modular system and enhance developer productivity.

    I plan to give overview of new Java Linker tool that would assist in creating a modular Java runtime. "jlink" assembles and optimizes a set of modules and their dependencies and "jmod" for creating modular packages with class files and resources. "jimage" which is 5x more performant than zip or jar formats.

    I plan to give interactive session in how to create a modular JDK image with specified root modules using jlink. Describe the plugin api for extension using custom modules.

    I shall give insights on tools usage and internals which would help developers in decision making along with benchmark results.

  • Liked Stephan Herrmann
    keyboard_arrow_down

    The Road to NullPointerException-free Software - with Eclipse JDT

    Stephan Herrmann
    Stephan Herrmann
    schedule 9 months ago
    Sold Out!
    240 mins
    Workshop
    Intermediate

    NullPointerException (NPE) is a dominating, omnipresent risk in each and every Java application, and at it's root it is an embarrassingly trivial problem.

    Over the years, Eclipse JDT has developed several levels of tool support for statically detecting NPEs at compile time. This tutorial will introduce flow analysis, annotation-based contracts and a null-aware type system as the main tools against NPE.

    Additional focus lies on organizational issues facilitating the migration from the risky Java era into an NPE-free software world.

  • Liked Sergey Prigogin
    keyboard_arrow_down

    Faster index for Java, from crazy idea to reality

    Sergey Prigogin
    Sergey Prigogin
    schedule 11 months ago
    Sold Out!
    45 mins
    Talk
    Beginner

    Did you ever have to cancel Open Type dialog because you didn't have time to wait for the search indices to initialize? Does slowness of populating the Call Hierarchy view annoy you? We suspect that for the majority of Eclipse Java users the answer to these questions is yes.

    The proposed solution to these and many other JDT sluggishness problems is a new index containing an order of magnitude more information about Java code than the old JDT indexes and caches. The technology chosen for the new, faster JDT index is heavily influenced by the CDT index that has been in use for almost a decade and proved to be very efficient and flexible. CDT borrowed a lot of code and ideas from JDT. Now it's time to pay back.

    Come to this talk to learn about the design of the new index and to see how it makes JDT blazingly fast.

  • Liked Neeraj Bhusare
    keyboard_arrow_down

    Eclipse Xtend - a better Java with less "noise"

    Neeraj Bhusare
    Neeraj Bhusare
    schedule 10 months ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    Xtend is a fully-featured Java like language that is tightly integrated with Java. It has a more concise, readable and expressive syntax than Java, and provides additional features such as Type inference, Extension methods and Lambda expressions. It comes with state of the art IDE support for Eclipse and IntelliJ IDEA. It also provides interface for integration of text editors for your language in Web applications.

    Xtend itself is implemented in Xtext and it is a proof of concept of how involved a language implemented in Xtext can be.

    The objective is to introduce the audience to Xtend language and how it can be used to write cleaner code against any Java APIs and solve day-to-day challenges in much better ways.

  • Liked Viral B. Shah
    keyboard_arrow_down

    Building an Open Source Community

    Viral B. Shah
    Viral B. Shah
    schedule 7 months ago
    Sold Out!
    20 mins
    Keynote
    Beginner

    Julia is a modern language that combines the productivity of Python, R, Matlab, and SAS with the performance of C, Fortran and Java. In doing so, it solves the two language problem, where specialists write algorithms in a scripting language and then programmers deploy it in a systems language.

    In this talk, I will share our experience about the evolution of the Julia community - how it grew from 3 contributors to 500, and from 0 to 1000 packages in the last 3 years.

  • Liked Srikanth Sankaran
    keyboard_arrow_down

    Beyond Java 9: An Overview of Project Valhalla

    Srikanth Sankaran
    Srikanth Sankaran
    schedule 8 months ago
    Sold Out!
    45 mins
    Talk
    Beginner

    Project Valhalla is an experimental OpenJDK project to develop major new language features for consideration for inclusion beyond Java 9. The project was announced in July 2014 and has seen brisk prototying efforts since then. This talk will offer a highly speculative sneak preview of the advanced features currently in development for the Java language and virtual machine under this banner. In particular, the presentation will cover the motivation, challenges and state of development of two of the key Valhalla features viz, Value types and Generic Specialization.

Sorry, no proposals found under this section.