Formatting for the Masses Part II | EclipseCon Europe 2018

Subscribers:
24,000
Published on ● Video Link: https://www.youtube.com/watch?v=nidqqfZ3tfs



Duration: 37:02
51 views
2


EclipseCon Europe 2018
Ludwigsburg, Germany · October 23 - 25, 2018
https://www.eclipsecon.org/europe2018

Speaker(s):
Holger Schill (itemis AG)
Fabio Spiekermann (itemis AG)

https://www.eclipsecon.org/europe2018/sessions/formatting-masses-part-ii

Code formatting is an opinionated beast. It always has been a matter of taste, and it always will be a matter of taste. This is the reason, why professional formatting tools, such as Eclipse JDT, offer a gazillion number of options. Which is still not sufficient enough. After all, you can override them inline with tag-comments to make the formatter shut up. Can't we do better than that? What if we could use machine learning techniques to detect the preferred code style that was used in a codebase so far? Turned out, we can.



Last year we gave a talk at EclipseCon about the possibilities that come with the Antlr Codebuff project (https://github.com/antlr/codebuff). We showed how it helps solving the problem with good results. The only ingredients you need is a small set of representative examples and a grammar written with ANTLR 4 (http://www.antlr.org/). Sounds great and will work for a lot of areas including Eclipse Xtext that uses ANTLR under the covers, but what if there is no given grammar? What if writing a grammar is hard and doing it just for the purpose of formatting doesn’t make sense? There must be a smarter way, because machines are already able to learn from the huge mess in social networks. In Comparison to social networks, source code is more structured and a machine should be able to learn from it. We trained a machine with Deep Learning, so it can format source code without knowledge of the grammar.



In this talk, we’ll explain the problem of formatting, demo Codebuff and our Deep Learning prototype including the concepts behind both technologies. Our goal for this talk is to convince you that writing a formatter manually is not necessary any more.




Other Videos By Eclipse Foundation


2018-11-19Next generation CI - building Eclipse projects on the new CBI build farm | EclipseCon Europe 2018
2018-11-19OSGi in Action: How we use OSGi to build Open Liberty | EclipseCon Europe 2018
2018-11-19OSGi Feature Model - Where Art Thou? | EclipseCon Europe 2018
2018-11-19Test your E4 POJOs easily and efficiently | EclipseCon Europe 2018
2018-11-19Popular patterns revisited on OSGi | EclipseCon Europe 2018
2018-11-19Invited Talk: From Java EE to Jakarta EE | EclipseCon Europe 2018
2018-11-19OSGi enRoute for R7 – getting started the easy way! | EclipseCon Europe 2018
2018-11-19Improved developer productivity thanks to Maven and OSGi | EclipseCon Europe 2018
2018-11-19Why Kotlin is my favourite example of Functional Programming? | EclipseCon Europe 2018
2018-11-19Eclipse Dirigible's WebIDE - Deep Dive | EclipseCon Europe 2018
2018-11-19Formatting for the Masses Part II | EclipseCon Europe 2018
2018-11-19Extending JDT with Language Servers | EclipseCon Europe 2018
2018-11-19Eclipse GEF DOT - Graphviz authoring environment in Eclipse | EclipseCon Europe 2018
2018-11-19OpenAdx "Autonomous Driving Simulation" Testbed – hardware in the loop (sponsored by Renesas)
2018-11-19Invited Talk: Developing cloud-native microservices using project Helidon | EclipseCon Europe 2018
2018-11-19A journey of implementing an Eclipse plugin to improve the quality of database usage | ECE 2018
2018-11-19Are you ready for Cloud Native Java? (sponsored by IBM) | EclipseCon Europe 2018
2018-11-19C/C++ Language Servers, The Next Generation is Now | EclipseCon Europe 2018
2018-11-19Adopting Debug Adapter Protocol in Eclipse IDE: netcoredbg (.NET debugger) case study | ECE 2018
2018-11-19Gradual Migration from Java EE to MicroProfile | EclipseCon Europe 2018
2018-11-19Making Eclipse Che Enterprise Grade (sponsored by Eclipse Che) | EclipseCon Europe 2018