Presentation is loading. Please wait.

Presentation is loading. Please wait.

LuaEclipse integrating tools in Lua development Luís Eduardo Jason Santos Lua Workshop 2009.

Similar presentations


Presentation on theme: "LuaEclipse integrating tools in Lua development Luís Eduardo Jason Santos Lua Workshop 2009."— Presentation transcript:

1

2 LuaEclipse integrating tools in Lua development Luís Eduardo Jason Santos Lua Workshop 2009

3 Special Thanks The Lua Team Ideais Andre Carregal and the Kepler Project Fábrica Digital FINEP/SEBRAE IT Quality Systems Move Networks Anywhere Tech Comunidade Lua LuaEclipse Luís Eduardo Jason Santos Lua Workshop 2009

4 LuaEclipse An integrated development environment built on the Eclipse platform The platform Some members of the Eclipse Foundation

5 The Eclipse platform Strong presence in several areas - SOA orchestration - Java development - web and script langugages - C/C++ development - mobile platforms (including linux mobile and symbian) - microcontrollers

6 LuaEclipse – What it is? IDE - Integrated Development Environment

7 What it is not... LuaEclipse is not a Code editor - like scite, gedit, notepad++, ultraedit, vi, etc.

8 What is it? IDE - Integrated Development Environment usually have: - code editor - compiler/interpreter - integrated development tools - debugger

9 Modern IDEs Popular tools - context detection - dependency analyzer - refactoring tools - builders and deployment tools - version control integration

10 LuaEclipse - Motivation Historical - corporate world origins Context - lua as an extension language

11 LuaEclipse - Motivation Main issues - integration with host application toolchain - keep contact with development teams culture

12 Origins 2003 LuaEclipse 0.5 Eclipse 2.1 Ideais Danilo Tuler

13 Origins LuaEclipse 1.0 Eclipse 3.2 Danilo Tuler 200320042005200620072008 Guilherme Martins Thiago Ponte André Carregal

14 Origins LuaEclipse 1.1 Eclipse 3.2/3.3 20042005200620072008 Guilherme Martins Thiago Ponte André Carregal Jason Santos Lua 5.1

15 Origins LuaEclipse 1.2 Eclipse 3.3 2005200620072008 Jason Santos Guilherme Martins André Carregal Edgard Arakaki Lua 5.1 2009 LuaDoc LuaProfiler

16 Origins LuaEclipse 1.3beta Eclipse 3.4 2005200620072008 Jason Santos André Carregal Lua 5.1 2009 LuaDoc LuaProfiler RemDebug

17 2005200620072008200920032004 LuaEclipse 0.5 Eclipse 2.13.03.13.23.33.43.5 1.01.11.21.31.3.1 In the paralel universe... 200720082009 Jason Santos Edgard Arakaki LuaEclipse 2.x Based on DLTK Requires Eclipse 3.3 design 2.x

18 200720082009 2.0alpha 2.x Back to the real world 2005200620072008200920032004 LuaEclipse 0.5 Eclipse 2.13.03.13.23.33.43.5 Jason Santos Investimento da FINEP - descrição do projeto feita em 2005 - início do Kepler Mobile - branch 2.x congelado na versão alpha 1.01.11.21.31.3.1 Edgard Arakaki

19 2009 - LuaEclipse 1.3.x "Herrick Muhlestein, et al." www.movenetworks.com LuaEclipse 1.3.1 Eclipse 3.4 2005200620072008 Jason Santos André Carregal Lua 5.1 2009 LuaDoc LuaProfiler RemDebug

20 2009 - LuaEclipse 1.3.x Code highlight Code highlight Code completion generated from a customizable Lua State Code completion generated from a customizable Lua State Documentation reference (using LuaDoc) Documentation reference (using LuaDoc) Integrated Debugger Integrated Debugger Integrated Profiler (using LuaProfiler) Integrated Profiler (using LuaProfiler) Execution using a system installed interpreter Execution using a system installed interpreter

21 2009 - LuaEclipse 1.3.x IDE Features use different integration forms IDE Features use different integration forms Code-highlight Syntax errors Lua 5.1 parser (JFlex) loadstring()LuaJava Execution Profiler Java Launcher LuaBinaries Java Launcher LuaProfiler Debugger Java Remdebug Client Sockets ReferenceLuaJava LuaDoc* RemDebug* Code-completionNew LuaStateLuaJava

22 2009 - LuaEclipse 1.3.x Code highlight Code highlight Compilation errors on saving Compilation errors on saving

23 2009 - LuaEclipse 1.3.x Auto- complete Auto- complete Comment and function folding Comment and function folding

24 2009 - O LuaEclipse 1.3.x Referência de funções do manual de referência de Lua 5.1 Referência de funções do manual de referência de Lua 5.1

25 2009 - LuaEclipse 1.3.x Sumário do LuaProfiler Sumário do LuaProfiler

26 2009 - LuaEclipse 1.3.x Integrated debugger: Stack control Stack control Inspection of local and global variables Inspection of local and global variables

27 2009 - LuaEclipse 1.3.x Integrated debugger: Stack control Stack control Inspection of local and global variables Inspection of local and global variables

28 2009 - LuaEclipse 1.3.x Integrated debugger: Stack control Stack control Inspection of local and global variables Inspection of local and global variables

29 LuaEclipse 1.3.x - problems Complexity 9357 lines of code 9357 lines of code 128 Java classes 128 Java classes Several non-integrated forms of implementing features Several non-integrated forms of implementing features Parser is impossible to extend Parser is impossible to extend Doesn't use DLTK Doesn't use DLTK

30 2009 - O LuaEclipse 2.0 DLTK implementa Code highlight, code completion, referências de documentação e erros de compilação DLTK implementa Code highlight, code completion, referências de documentação e erros de compilação AST montada usando um parser em Lua AST montada usando um parser em Lua Refactoring e formatadores escritos em Lua Refactoring e formatadores escritos em Lua Debugger integrado Debugger integrado Profiler integrado (usando LuaProfiler) Profiler integrado (usando LuaProfiler) Execução utilizando LuaJava além do interpretador instalado no sistema Execução utilizando LuaJava além do interpretador instalado no sistema

31 Java Launcher Java Remdebug Client LuaProfiler Sockets RemDebug* 2009 - LuaEclipse 2.0 Code-highlight Syntax errors DLTK LuaJava Execution Profiler Debugger References Greater DLTK integration Greater DLTK integration Incremental parsers written in Lua Incremental parsers written in Lua Code-completion Lua AST Parser in Lua Metalua*LEG LuaBinaries outros Built-in interpreter Java Launcher

32 2010 - LuaEclipse 2.1 Ability to publish, retrieve and rate e avaliar code snippets and 'recipes' from the internet – straight from the IDE Ability to publish, retrieve and rate e avaliar code snippets and 'recipes' from the internet – straight from the IDE LuaRocks – Integration of dependency installation LuaRocks – Integration of dependency installation MoonMonkey – ability to extend and automate the IDE in Lua MoonMonkey – ability to extend and automate the IDE in Lua

33 LuaEclipse 2.x - problems Manpower Manpower

34 LuaEclipse 2.x - problemas Manpower Manpower

35 Expectations Create new development opportunities Create new development opportunities Enhance user experience Enhance user experience Raise productivity Raise productivity Reduce development costs Reduce development costs Bring the Lua community closer Bring the Lua community closer Speed up evolution Speed up evolution

36 Contact/downloads Website http://luaeclipse.luaforge.net SVNhttps://svn.anyware-tech.com/luaeclipse/luaeclipseUpdate-sites http://luaeclipse.luaforge.net/preview/update-site http://luaeclipse.luaforge.net Luís Eduardo Jason Santos Luís Eduardo Jason Santos


Download ppt "LuaEclipse integrating tools in Lua development Luís Eduardo Jason Santos Lua Workshop 2009."

Similar presentations


Ads by Google