Slide 1

Slide 1 text

Welcome to

Slide 2

Slide 2 text

The Future of Sven Efftinge, Sebastian Zarnekow

Slide 3

Slide 3 text

first commit May 2008 Most Innovative Eclipse Project March 2010 Version 0.7 June, 2009 Version 1.0 June, 2010 What happened so far…

Slide 4

Slide 4 text

Version 2.5 December 2013 Version 2.0 June, 2011 Version 2.3 (Xbase) June, 2012 Version 2.6 May, 2014 XtextCON May, 2014 Version 2.7 Sep, 2014 Version 2.4 March 2013 Version 2.8 March, 2015 XtextCon May, 2015

Slide 5

Slide 5 text

Version 2.8 Over 250 Bugfixes 1263 commits 2.443.791 lines added 2.030.058 lines removed Total 5.747.523 Lines Of Code 27.539 occurrences of @Test

Slide 6

Slide 6 text

Version 2.8 New Formatter API Improved Responsiveness Whitespace Sensitive Languages Grammar Language Enhancements New Xbase Compiler Options Convert To Xtend
 …

Slide 7

Slide 7 text

Upcoming
 2.8.3 150+ commits 120+ Resolved Tickets DiffStat: 678(Files) 22097(+), 4513(-) Tests:165(Files) 17799(+), 1150(-)

Slide 8

Slide 8 text

Automated Error Reporting Immediate User Feedback

Slide 9

Slide 9 text

Automated Error Reporting Immediate User Feedback

Slide 10

Slide 10 text

Automated Error Reporting Immediate User Feedback

Slide 11

Slide 11 text

Automated Error Reporting Immediate User Feedback

Slide 12

Slide 12 text

So what’s next?

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

lots of positive feedback What do you like about Xtext?

Slide 18

Slide 18 text

What should be 
 improved, changed or added?

Slide 19

Slide 19 text

I miss the "big picture" of the injection points. There are not enough tutorials and api documentation. Documentation to customize the XBase compiler and validation. Some more documentation of the APIs will definitely help (I wish I could spend some time on this...) Documentation of internal concepts add more docs on how xbase works beyond the inferrer. Default implementations / Xbase implementation is not well documented. Documentation Documentation. Very few interfaces have API specifications. Documentation on xbase customization Documentation could me MUCH improved

Slide 20

Slide 20 text

xtext.org

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

Performance I think that the performance can be improved. Performance/background compilation. Faster Builder, indexing, cache index of stuff in binary JAR dependencies Performance/footprint of the IDE (CPU fans much louder when activating Xtext/Xtend features) Performance is still a big issue (Xtend included) (didn't test 2.8 yet, though) performance, performance, performance I would improve the performance Performance should be improved.

Slide 23

Slide 23 text

Performance Working on it every release Incremental Compilation Storaged Resources Do nothing in UI Thread Cancelable builds Cancelation policy

Slide 24

Slide 24 text

Building Our goal is to build just a non-ui module using Xtext. However, navigating and fighting the mish-mash of build technologies (maven, mwe2, eclipse projects & plugins, manifest files...) has proven to be a nightmare for us non-Eclipse (RCP/IDE) developers - the biggest detractor by far. project structure (eclipse vs. maven) dependency list required to use xtext-maven-plugin for code generation shouldn't require specifiying 8 different versions of things Maven support out of the box with standard paths e.g src/main/java Building is cumbersome Nothing I can really think about today, except Maven integration maybe. Easier Maven support to build a DSL that can be used during a build in other maven plugins. build process integration !!! usage without eclipse as jar

Slide 25

Slide 25 text

Building Working on it Maven Plug-Ins Gradle Plug-Ins Optional Maven project layouts Runtime only projects

Slide 26

Slide 26 text

Declipse Support for additional platforms would be great. I dream of Xtext-like frameworks for Visual Studio or for the JavaScript world. Eclipse UI dependency More web integration I'm looking forward to the new "ide" plugin that should be UI independent, this means we can turn a lot of unreliable UI tests into regular tests. Support for Netbeans, generation of Netbeans editor support. Migrating to another RCP Platform, like IntelliJ IDEA (first off all), NetBeans. IntelliJ Support - Eclipse-free mode Web support (Ace editor, Orion, etc.) Web based model editor component. support for web orion/che would be great. Support for Orion and Eclipse Che Decouple stuff from Eclipse, e.g. for standalone usage (or usage in other IDEs)

Slide 27

Slide 27 text

Web : Orion + Eclipse Che = 48,5%

Slide 28

Slide 28 text

Xtext 2.9

Slide 29

Slide 29 text

Xtext 2.9

Slide 30

Slide 30 text

What else?

Slide 31

Slide 31 text

Contributing was never easier Oomph, Gradle, Error Reporting

Slide 32

Slide 32 text

Feedback. #XtextCON

Slide 33

Slide 33 text

Have Fun. :-)