| <!DOCTYPE html> |
| <html> |
| |
| <head> |
| <meta charset="UTF-8"> |
| <title>Xtend - Community</title> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| <meta name="description" |
| content="Xtend is a statically typed programming language sitting on top of Java."> |
| <meta name="author" content="Sven Efftinge"> |
| <meta name="author" content="Miro Spoenemann"> |
| <!-- styles --> |
| <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements --> |
| <!--[if lt IE 9]> |
| <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> |
| <![endif]--> |
| |
| <!-- Le fav and touch icons --> |
| |
| <link rel="shortcut icon" href="/xtend/images/favicon.png"> |
| |
| <link href="/xtend/css/bootstrap.css" rel="stylesheet" type='text/css'> |
| <link href="/xtend/css/bootstrap-responsive.css" rel="stylesheet" type='text/css'> |
| <link href="/xtend/css/shield-responsive.css" rel="stylesheet" type='text/css'> |
| <link href='/xtend/css/fonts.css' rel='stylesheet' type='text/css'> |
| <link href="/xtend/css/prettyPhoto.css" rel="stylesheet" media="screen" type='text/css'> |
| <link href="/xtend/css/prettify.css" type="text/css" rel="stylesheet"/> |
| <link href="/xtend/css/style.css" rel="stylesheet" type='text/css'> |
| |
| <!--[if lt IE 9]> |
| <link href="css/iebugs.css" rel="stylesheet" type='text/css'> |
| <![endif]--> |
| |
| <!-- BEGIN Cookie Consent |
| <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.css" /> |
| <script src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.js"></script> |
| <script> |
| window.addEventListener("load", function(){ |
| window.cookieconsent.initialise({ |
| "palette": { |
| "popup": { |
| "background": "#000" |
| }, |
| "button": { |
| "background": "#f1d600" |
| } |
| }, |
| "theme": "edgeless", |
| "type": "opt-in", |
| onInitialise: function (status) { |
| var type = this.options.type; |
| var didConsent = this.hasConsented(); |
| if (type == 'opt-in' && didConsent) { |
| // TODO: enable cookies |
| } |
| if (type == 'opt-out' && !didConsent) { |
| // TODO: disable cookies |
| } |
| }, |
| onStatusChange: function(status, chosenBefore) { |
| var type = this.options.type; |
| var didConsent = this.hasConsented(); |
| if (type == 'opt-in' && didConsent) { |
| // TODO: enable cookies |
| } |
| if (type == 'opt-out' && !didConsent) { |
| // TODO: disable cookies |
| } |
| }, |
| onRevokeChoice: function() { |
| var type = this.options.type; |
| if (type == 'opt-in') { |
| // TODO: disable cookies |
| } |
| if (type == 'opt-out') { |
| // TODO: enable cookies |
| } |
| }, |
| "content": { |
| "href": "http://www.eclipse.org/legal/privacy.php" |
| } |
| })}); |
| </script> |
| END Cookie Consent --> |
| </head> |
| |
| |
| <body> |
| |
| <!-- Navbar --> |
| <div class="navbar navbar-fixed-top" |
| style="border-bottom: 1px solid #000;"> |
| <div class="navbar-inner"> |
| <div class="container"> |
| <a class="btn btn-navbar" data-toggle="collapse" |
| data-target=".nav-collapse"> <span class="icon-bar"></span> <span |
| class="icon-bar"></span> <span class="icon-bar"></span> |
| </a> <a class="brand" href="/xtend/index.html"></a> |
| <div class="nav-collapse collapse" style="height: 0px;"> |
| <ul class="nav"> |
| <li ><a href="/xtend/download.html">Download</a></li> |
| <li ><a href="/xtend/documentation/index.html">Documentation</a></li> |
| <li ><a href="/xtend/community.html">Community</a></li> |
| <li ><a href="http://xtext.org">Xtext</a></li> |
| <li ><a href="http://www.eclipse.org">Eclipse.org</a></li> |
| </ul> |
| <!--div class="btn-group pull-right"> |
| <div class="g-plusone" data-href="http://www.xtend-lang.org"></div> |
| </div--> |
| </div> |
| <!--/.nav-collapse --> |
| </div> |
| </div> |
| </div> |
| <!-- Navbar End --> |
| |
| |
| <div id="header_wrapper"> |
| <div class="container"> |
| <div class="flexslider image-slider"> |
| <div class="row"> |
| <div class="span5 team"> |
| <a href="https://www.eclipse.org/forums/index.php/f/27/" class="anchor-in-div" title="The Eclipse Forum is the first source for getting answers in case you got stuck. The community is very friendly. Please ask any questions clearly and with sufficient information attached."></a> |
| <div class="row"> |
| <div class="span1"> |
| <img src="/xtend/images/discussion-white.png" alt="image" class="image_left"> |
| </div> |
| <div class="span4"> |
| <h3>Discussion Group</h3> |
| <p></p> |
| </div> |
| </div> |
| </div> |
| <div class="span5 team"> |
| <a href="https://github.com/eclipse/xtext-xtend/issues" class="anchor-in-div" title="Bug reports and enhancement request are tracked on GitHub. Please explain the problem and provide a reduced but reproducable example. Also please explain the concrete use case when requesting enhancements."></a> |
| <div class="row"> |
| <div class="span1"> |
| <img src="/xtend/images/bug-white.png" width="80" height="80" alt="image" class="image_left"> |
| </div> |
| <div class="span4"> |
| <h3>Found a Bug?</h3> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="row"> |
| <div class="span5 team"> |
| <a href="https://github.com/eclipse/xtext-xtend" class="anchor-in-div" title="The Xtend source code is available on GitHub. You'll find more information on how to contribute to the project in the README.md contained there."></a> |
| <div class="row"> |
| <div class="span1"> |
| <img src="/xtend/images/github-mark-white.png" alt="image" class="image_left"> |
| </div> |
| <div class="span4"> |
| <h3>Source Code</h3> |
| </div> |
| </div> |
| </div> |
| <div class="span5 team"> |
| <a href="https://twitter.com/xtendlang" class="anchor-in-div" title="If you are on twitter and want to get notified about Xtend, you should consider following @xtendlang."></a> |
| <div class="row"> |
| <div class="span1"> |
| <img src="/xtend/images/Twitter-bird-white.png" alt="image" class="image_left"> |
| </div> |
| <div class="span4"> |
| <h3>Xtend on Twitter</h3> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| <div class="inner"> |
| <div class="container clearfix"> |
| <h2>Videos of Presentations</h2> |
| <hr> |
| <div class="row"> |
| <div class="span12"> |
| <table class="table table-striped"> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/rCtAlTmaztU">Cool kids' way of generating code (EclipseCon 2018, Ludwigsburg)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/pS3QueML09s">EMF + Xtend = BOEM - An Xtend library to build good-looking EMF models (EclipseCon 2018, Toulouse)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/xKq-lZo0LEs">Large Scale Model Transformations with Xtend (EclipseCon 2017, Ludwigsburg)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/q9aOeCYzVvU">Unconference Xtend (EclipseCon 2017, Ludwigsburg)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/teOULtQ81-U">Recipes to build Code Generators for Non-Xtext Models with Xtend (EclipseCon 2016, Ludwigsburg)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/jqu4W7AeXGk">Xtend API and DSL Design Patterns (EclipseCon 2016, Ludwigsburg)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/Jq4H5pL4wq0">Code Generation for Professionals (EclipseCon 2016, Ludwigsburg)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/fTkwFJy3EeM">Testing Xtext Languages (EclipseCon 2015, Ludwigsburg)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/n7LUgXX_3cE">10 Java Idioms Stomped with Xtend (EclipseCon 2015, Ludwigsburg)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://youtu.be/jCgPfxaY8XQ">Write cool scalable enterprise application tests with Xtend (EclipseCon 2014, Ludwigsburg)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://www.youtube.com/watch?v=EzH5MPd13iI">Eclipse Xtend: A Language Made for Java Developers (JavaOne 2012, SF)</a></h2></td></tr> |
| <tr><td>Video</td><td><h2><a href="https://skillsmatter.com/skillscasts/2917-xtend-xtest">Eclipse Xtend: A Language Made for Java Developers (Skills Matter 2012, London)</a></h2></td></tr> |
| </table> |
| </div> |
| </div> |
| </div> |
| <div> |
| <div class="inner"> |
| <div class="container clearfix"> |
| <h2>Articles and Blog Posts</h2> |
| <hr> |
| <div class="row"> |
| <div class="span12"> |
| <table class="table table-striped"> |
| <tr><td>Talk Proposal</td><td><h2><a href="https://www.eclipsecon.org/europe2019/sessions/what-xtend-can-do-you">What Xtend can do for you</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="https://blogs.itemis.com/en/from-the-intern-to-xtend-commit-in-14-days">From the intern to Xtend Commit in 14 days</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="https://blogs.itemis.com/en/model-transformations-for-mbse-with-cameo-and-xtend">Model transformations for MBSE with Cameo and Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="https://blogs.itemis.com/en/xtend-2-14-unnecessary-modifiers-validation">Xtend 2.14 - Unnecessary modifiers validation</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="https://blogs.itemis.com/en/implementing-junit-test-cases-in-xtend">Implementing JUnit Test Cases in Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="https://blogs.itemis.com/en/building-domain-specific-languages-with-xtext-and-xtend">Building Domain-specific Languages with Xtext and Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="https://blogs.itemis.com/en/autosar-ocl-xtend-oaw-for-validation">AUTOSAR: OCL, Xtend, oAW for validation</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://futurice.com/blog/android-development-has-its-own-swift">Android Development has its own Swift</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://the-dusty-deck.blogspot.de/2014/06/xtend-gentle-and-functional-java.html">Xtend, the Gentle and Functional Java</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://www.infoq.com/articles/unusual-ways-to-create-a-mobile-app">Android and Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://jnario.org/org/jnario/jnario/documentation/20FactsAboutXtendSpec.html">20 Facts about Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://www.sebastianbenz.de/5-Things-that-make-Xtend-a-great-Language-for-Java-developers">5 things that make Xtend a great language</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://www.javacodegeeks.com/2013/02/building-vaadin-ui-with-xtend.html">Building Vaadin UIs with Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2012/12/java-8-vs-xtend.html">Java 8 vs. Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://tomsondev.bestsolution.at/2012/04/11/javafx-xtend-a-perfect-match/">JavaFX & Xtend - A Perfect Match</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://tomsondev.bestsolution.at/2012/04/11/javafx-xtend-a-sensational-perfect-match/">JavaFX & Xtend - A Sensational Perfect Match</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://tomsondev.bestsolution.at/2012/05/29/javafx-xtend-an-ongoing-love/">JavaFX & Xtend - An Ongoing Love</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://tomsondev.bestsolution.at/2012/06/19/xtend-javafx-properties-and-operator-overloading/">Xtend, JavaFX-Properties and Operator Overloading</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.moritz.eysholdt.de/2011/12/building-swt-user-interfaces-with-xtend.html">Building SWT User Interfaces with Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2012/06/vertx-and-xtend.html">Vert.x & Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2012/05/distance-time-speed.html">Distance / Time = Speed - A Post on Operator Overloading in Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2012/04/xtend-examples-used-at-eclipsecon-2012.html">Xtend Example Screencasts</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2012/04/xtend-example-working-with-distances.html">Working With Distances using Xtend (Operator Overloading Applied)</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2012/01/i-like-free-beer.html">I Like Free Beer (99 Bottles in Xtend)</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2011/12/groovy-scala-java-xtend-stupid.html">Groovy, Scala, Java, Xtend - A Stupid Comparism</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2011/12/groovy-scala-java-xtend-updated-stupid.html">Groovy, Scala, Java, Xtend - An UPDATED Stupid Comparism</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2011/12/writing-android-uis-with-xtend.html">Writing Android Apps with Xtend</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2011/11/whats-so-special-about-xtends-extension.html">What's so special about Xtend's extension methods</a></h2></td></tr> |
| <tr><td>Blog</td><td><h2><a href="http://blog.efftinge.de/2011/10/xtend-21-type-safe-groovy-style-builder.html">Xtend - Type-safe Groovy-style Builder APIs</a></h2></td></tr> |
| </table> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| |
| <footer class="site-footer"> |
| <div id="extra"> |
| <div class="container inner-footer"> |
| <div class="row"> |
| <div class="span6"> |
| <h3 class="footer-links-header">Quick Links</h3> |
| <ul class="footer-links clearfix"> |
| <li><a href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li> |
| <li><a href="http://www.eclipse.org/legal/termsofuse.php">Terms of Use</a></li> |
| <li><a href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a></li> |
| <li><a href="http://www.eclipse.org/legal/">Legal</a></li> |
| </ul> |
| <ul class="footer-links clearfix"> |
| <li><a href="http://www.eclipse.org">Eclipse Home</a></li> |
| <li><a href="http://marketplace.eclipse.org/">Market Place</a></li> |
| <li><a href="http://www.planeteclipse.org/">Eclipse Planet</a></li> |
| <li><a href="https://www.eclipse.org/forums/index.php/f/27/">Xtext Forum</a></li> |
| </ul> |
| </div> |
| <div class="span6"> |
| <!-- Social Media Links --> |
| <h3 class="footer-links-header"">Social Media</h3> |
| <ul class="footer-links clearfix"> |
| <li> |
| <a href="https://twitter.com/xtendlang"><img src="/xtend/images/Twitter-bird-darkgray.png" class="img-responsive" style="margin-right: 5px;height: 1em;" alt="Twitter icon">@xtendlang on Twitter</a> |
| </li> |
| </ul> |
| </div> |
| |
| </div> |
| </div> |
| </div> |
| <a href="#" class="scrollup fadeOutRight animated" style="display: none;">ScrollUp</a> |
| <a href="http://dryicons.com/">Icons by http://dryicons.com</a> |
| <!-- Le javascript |
| ================================================== --> |
| <!-- Placed at the end of the document so the pages load faster --> |
| <script src="/xtend/js/jquery-1.7.1.min.js" type="text/javascript"></script> |
| <script src="/xtend/js/bootstrap.min.js" type="text/javascript"></script> |
| |
| <!-- include pretty-print files --> |
| <script src="/xtend/js/prettify.js" type="text/javascript" ></script> |
| <script src="/xtend/js/lang-xtend.js" type="text/javascript"></script> |
| |
| <!-- Include the plug-in --> |
| <script src="/xtend/js/jquery.prettyPhoto.js" type="text/javascript"></script> |
| <script src="/xtend/js/jquery.easing.1.3.js" type="text/javascript"></script> |
| <script src="/xtend/js/custom.js" type="text/javascript"></script> |
| <!--script src="https://apis.google.com/js/platform.js" async defer></script--> |
| <!--script type="text/javascript"> |
| var _gaq = _gaq || []; |
| _gaq.push([ '_setAccount', 'UA-2429174-4' ]); |
| _gaq.push([ '_trackPageview' ]); |
| (function() { |
| var ga = document.createElement('script'); |
| ga.type = 'text/javascript'; |
| ga.async = true; |
| ga.src = ('https:' == document.location.protocol ? 'https://ssl' |
| : 'http://www') |
| + '.google-analytics.com/ga.js'; |
| var s = document.getElementsByTagName('script')[0]; |
| s.parentNode.insertBefore(ga, s); |
| })(); |
| </script--> |
| </footer> |
| |
| </body> |
| |
| </html> |